TODO 13.4 KB
Newer Older
1
2
-*- Mode: outline; -*-

David Kågedal's avatar
David Kågedal committed
3
Att göra i elisp-klienten
David Kågedal's avatar
David Kågedal committed
4
5
=========================

David Byers's avatar
David Byers committed
6
7
8
9
            Om du fixar någonting som står med på den här
            listan, glöm inte att ta bort det från listan!


David Byers's avatar
David Byers committed
10
11
* SAKER ATT KOLLA

David Byers's avatar
David Byers committed
12
13
    Hur och var skall man egentligen spara inställningar? .emacs är
    kanske inte det bästa alternativet. 
David Byers's avatar
David Byers committed
14
15


16
* BUGGAR
David Kågedal's avatar
David Kågedal committed
17

David Byers's avatar
David Byers committed
18
19
** OSORTERADE

20
21
22
23
24
25
    Om man byter buffert med C-x b till den sista aktiva KOM-bufferten
    så tycker Nästa LysKOM att det inte finns fler aktiva
    KOM-sessioner. Funktionen verkar vara lite för känslig för hur
    lyskom-buffer-list ser ut. Den borde nog göra något lite
    intelligentare när listan ser ut att ha tagit slut.

David Byers's avatar
David Byers committed
26
27
28
29
30
31
32
33
34
35
36
37
38
39
    Peter Enderborg hade en 118 tecken bred XEmacs 20.3 med scrollbar,
    och vilkalistan blev precis 1 tecken för bred. I Gnu Emacs 19.30
    blev det rätt. 

    Race condition när man skickar in inlägg. Fönsterkonfigurationen
    återställs asynkront, och det går att trycka C-c C-c k
    tillräckligt fort att man skapar den nya inläggsbufferten innan
    den gamla fönsterkonfigurationen (för den förra inläggsbufferten)
    återställs. Resultatet är att man aldrig ser den nya bufferten.

    Endast gör fortfarande fel. Den klarar inte hål och använder inte
    set-last-read, utan set-unread.


David Byers's avatar
David Byers committed
40
41
42
43
44
45
46
47
48
49
** CACHE

    Det kan hända att inläggstexter kastas ur cachen så fort man har
    läst dem. Om det är så, så är det *inte* bra, för att om man
    kommenterar så måste inlägget hämtas igen. [DET VERKAR INTE VARA
    SÅ]


** MULE-RELATERAT SKRÄP

David Byers's avatar
David Byers committed
50
51
    Vi har kanske inte satt enable-multibyte-characters till nil i
    minibufferten. 
David Byers's avatar
David Byers committed
52
53


54
55
** VIKTIGA BUGGAR

David Byers's avatar
David Byers committed
56
57
58
59
60
61
62
63
64
    Buggar i special-insert gör att eoc inte körs, och man har inte
    läst inlägget. Man borde få inlägget läsmarkerat och få end of
    command.

    lyskom-w3-region får inte krascha. Stoppa condition-case runt.

    lyskom-format-html får inte försöka formattera som HTML om det
    inte går att ladda w3.

David Byers's avatar
David Byers committed
65
66
67
68

** OMBRYTNING

    Vi klarar inte emailheaders som är brutna över flera rader.
David Byers's avatar
David Byers committed
69
70
71
72
73
    Klienten tror att den indragna fortsättningen är början på ett
    nytt stycke. Man skulle kunna tänka sig att nytt-stycke-regeln
    inte gör nytt stycke om alla rader har börjat med ord: och man
    hamnar på en indragen rad. Indragna rader skulle inte sabotera
    ord:-prefixet. 
David Byers's avatar
David Byers committed
74
75


76
** DEFERRED INSERT
77

David Byers's avatar
X    
David Byers committed
78
79
80
    lyskom-replace-deferred verkar inte använda lyskom-last-viewed i
    alla fall. Och den beter sig fel när man står vid prompten och
    vill bläddra bakåt.
81

82
    Om ett namn som fylls i i efterhand gör att sista raden blir för
David Byers's avatar
David Byers committed
83
84
85
    lång, så scrollar klienten trots att den inte borde. David Kågedal
    trodde att han hade fixat det. (Detta är en gammal rapport. Den
    kanske inte stämmer.)
86
87
88
89


** PREFETCH 

David Byers's avatar
X    
David Byers committed
90
91
92
    Dubbla prefetcher kan vara väldigt förvirrande. Om man t.ex. gör
    endast i ett möte (säg IÅM) innan det prefetchas får man två
    parallella prefetcher på samma möte.
David Kågedal's avatar
David Kågedal committed
93

94
95
    Gå ur mötet man prefetchar genererar en bug.

96
97
98
    Om man går till ett möte som inte prefetchats och inte har några
    inlägg blir promten fel, och man får ett felmeddelande.

99
100
101

** COMPLETING READ

David Byers's avatar
David Byers committed
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
    I LysKOM verkar "Da " expanderas till "D", vilket är Helt Fel.

    Man kan få oländiga loopar i completion. Just nu är det inte så
    lätt, men det går fortfarande. Problemet uppstår då två teckern
    har spacesemantik men inte mappas till samma tecken av
    collate-tabellen. Den riktiga fixen är i två steg: (1) se till att
    collate-tabellen alltid mappar alla space till space (2) se till
    att lyskom-complete-string kan detektera en oländig loop och
    stoppa den. 

        Minitestfall: (lyskom-complete-string '("L\t" "L s")).
        Problem uppstår om man får space-mismatch pga att två olika
        tecken med spacesemantik mismatchar (fin svenska, eller hur.)
        Man borde få match när det inträffar.

David Byers's avatar
David Byers committed
117
118
119
120
121
122
123
124
125
126
    lyskom-read-session-no hanterar inte att man anger specifikt
    sessionsnummer om samma person har flera sessioner, tror jag.
    Problemet är att s xxxx hanteras i lyskom-read-conf-internal som
    bara kan returnera conf-z-info. Man borde låta den returnera info
    om specifikt sessionsnummer också.

    Fixa så LysKOM och complete.el fungerar ihop genom att sätta om
    samma mappar som complete.el gör, till wrappers runt complete.el
    som kollar om completion är LysKOM-completion eller något annat.

127
128
129

** HANTERING AV FOTNOTER

David Kågedal's avatar
David Kågedal committed
130
131
132
    Den försöker fortfarande följa hemliga kommentarer om
    kom-show-footnotes-immediately är satt.

133
134
135
    Om man läser ett inlägg som har en fotnot (t ex 1449843) och vill
    spara det på fil, så blir det bara fotnoten som sparas.  Man vill
    nog spara minst själva huvudinlägget, och nog också fotnoterna
David Byers's avatar
David Byers committed
136
137
138
139
    samtidigt. [Pja, det är faktist meningen att det skall funka så
    här. Spara text sparar sisa inlägget man tittade på.
    Prefixargument ger fler. Frågan om det är *bra* eller inte är en
    helt annan...]
140

141
    Fotnoter som visas på en gång filtreras inte. [verkar fixat]
David Kågedal's avatar
David Kågedal committed
142

David Kågedal's avatar
David Kågedal committed
143
144
145
    kom-review-tree på en text med fotnoter visar fotnoterna på en
    gång. Är det en bug?

146
147

** PROMPTEN
David Kågedal's avatar
David Kågedal committed
148

149
150
    När jag ska läsa en kommentar till ett brev i min brevlåda så blir
    prompten "Läsa nästa brev" i stället för "Läsa nästa
David Byers's avatar
David Byers committed
151
    kommentar". Kommentaren ligger inte i brevlådan. (LÅG PRIORITET)
152

David Byers's avatar
David Byers committed
153

154
155
156
157
158
159
160
** HEISENBUGS

    Sentinelmeddelanden i ikoniferade frames buggar. Prova att kasta
    ut en session i ett ikonifierat fönster. Eller kanske till och med
    bara i en gömd buffert.

    Tommy Persson får LysKOM protocol error. Det kan bero på strulande
David Byers's avatar
David Byers committed
161
162
163
    modem. Tyvärr var det någon annan som också fick det, som kanske
    inte sitter bakom modem. Nu fick Kågedal också problemet, men
    fortfarande kan ingen reproducera det. 
164
165
166



David Byers's avatar
David Byers committed
167
168
* FÖRBÄTTRINGAR

169
170
171
172
173
174
175
176
177
** LÄSA INLÄGG

    Problem: När ett inlägg är längre än en skärm så är det jobbigt
    att tappa bort sig när inlägget är slut och man scrollar mindre än
    en skärmlängd. Lösningsförslag: Använd Emacs' kod för att blinka
    parentesmatchning (finns i simple.el(blink-matching-open)) för att
    blinka på första kolumnen i raden som var längst ner på skärmen
    innan man tryckte space. Från Teddy (inlägg 2495321.)

David Byers's avatar
David Byers committed
178
179
        * En testimplementation av detta finns nu och fungerar rätt så
          bra. Att använda simple.el var dock inte en bra idé.
180
181
182


    Det vore skoj om lyskom.el kunde, som jag har för mig att någon
David Byers's avatar
David Byers committed
183
184
185
186
187
188
    föreslog en gång, parsa fotnoter av det där slaget [sed-mönster
    ungefär] och applicera dem på texten. Det korrigerade inlägget
    skulle ha formatmarkeringen (korrigerad av 123455) i foten. Återse
    omodifierat skulle visa inlägget okorrigerat. Den korrigerande
    fotnoten visas inte i den normala läsordningen och markeras som
    läst automatiskt.
189
190
191
192
193
194
195
196

        * Krävs inkrokningar view-text.el för att inte skriva ut att
          det finns en fotnot.

        * Krävs mer flexibel formatmarkering.

        * Krävs att man hämtar fotnoter innan man visar inlägget.

David Byers's avatar
David Byers committed
197
        * Troligtvis är det bättre att använda aux-items för detta.
198
199


David Byers's avatar
David Byers committed
200

David Byers's avatar
David Byers committed
201
** SKRIVA INLÄGG
David Byers's avatar
David Byers committed
202

David Byers's avatar
David Byers committed
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
    Frågan om flera mottagare kanske inte borde ställas om man har
    arrangerat om mottagarlistan rejält. Den skall ställas om man
    lägger till en mottagare till en existerande. Den kanske inte
    behöver ställas om man har arrangerat om alla mottagare. Frågan är
    vad som händer mittemellan.

    Varningen om olästa kommentarer är inte perfekt. Det finns flera
    förslag till ändringar. Ett är att varna bara för kommentarer som
    skapades efter man började skriva kommentaren, men det verkar vara
    en kompromiss. Minst en som efterfrågade det ville i själva verket
    kunna slå på/av varningarna per möte. Bellman ville att varningen
    inte skulle gå att slå av helt med mindre än att man explicit slår
    av den i alla möten som man är med i.

        * Den rätta saken att göra är antagligen att göra det möjligt
          att ge variabeln ett defaultvärde och ha möjlighet att ge
          undantag. 

        * Defaultvärden skulle kunna vara varna, varna inte och varna
          för nya. Ett förslag är också att varna för nya enbart om
          man har läst minst en eller kanske alla av kommentarerna
          till inlägget man kommenterar.

        * Eventuellt skulle det vara bra med en varning innan man
          börjar kommentera om kommentarer som redan finns där. Den
          varningen borde vara oberoende av den som kommer när man
          skickar in.

    Addera det kommenterades författare som mottagare vid behov när
    man börjar skriva inlägget. Se till att inte gnälla om denna
    mottagare när man skickar in inlägget.

        * När man börjar skriva inlägg, håll reda på att man har lagt
          till författare automatiskt, och försök låta bli att gnälla
          om dessa. 

        * Hans Persson ville att att det kommenterades författare
          skulle läggas till automatiskt, men att om man har editerad
          headrarna så skulle kontrollen göras om igen när man
          skickade in inlägget. Dock skulle den *inte* göras om man
          manuellt tog bort det kommenterades författare (det här
          skulle hindra att man tog bort mottagare så att det
          kommenterades författare blev utan.) Hans Persson har helt
          rätt.
David Byers's avatar
David Byers committed
247

248
249

** EDIT-BUFFERTEN
David Kågedal's avatar
David Kågedal committed
250

David Byers's avatar
David Byers committed
251
252
    Defaultplaceringen av nya mottagare i editbufferten är fånig.

253
254
255
256
257
258
259
    Borde kolla efter dublettmottagare innan man skickar in inlägget.
    Annars så får man ett tråkigt felmeddelande från servern.

    Kolla hur misslyckad inskickning hanteras. Vi borde ajtomagiskt
    ploppa upp edit-bufferten, alternativt ha ett kommando för att
    göra det (och göra det till defaultkommandot.)

David Byers's avatar
David Byers committed
260
261
262
263
264
265
266
    Det borde gå att ändra mottagare till cc-mottagare genom att bara
    lägga till mottagaren igen som cc-mottagare. Motsvarande för bcc
    och så vidare.

    Man borde kunna manipulera mottagare i editbufferten med musen (ta
    bort, ändra typ.)

David Byers's avatar
David Byers committed
267

268
** FILTER
David Byers's avatar
David Byers committed
269

270
271
272
273
274
275
276
277
278
    Ny filter-edit-mode

    Använd den nya filterkompilatorn.

    Gör inte nästa kommando efter en filtrering. Kontrollera med
    variabel.


** ASYNKRONA MEDDELANDEN
David Byers's avatar
David Byers committed
279

David Byers's avatar
David Byers committed
280
281
    Färgläggning av meddelanden baserat på varifrån de kommer, och
    vart det går. John Olsson efterfrågar.
David Kågedal's avatar
David Kågedal committed
282

283
284
285
286
287
    Filtrera asynkrona meddelanden (Pontus Lidman)


** MEDLEMSSKAPSINFORMATION

David Byers's avatar
X    
David Byers committed
288
    Lista medlemsskap borde hållas uppdaterad. Vi behöver hookar för
289
290
291
292
    - Gå in i möte (uppdatera datum)
    - Ändra prioritet (det har vi)
    - Ändra olästa
    - Invalidera conf-stat (kanske)
David Byers's avatar
X    
David Byers committed
293
294
295
296
    Plus att vi måste fixa en datastruktur till bufferten. Vilket slit.
    Kanske kan man mergea prioritera och lista medlemsskap? Det skulle
    ju förenkla...

297
298
299

** ÅTERSE

David Byers's avatar
X    
David Byers committed
300
301
302
303
304
305
306
307
    Återse senaste borde vara superinkrementell. Man kunde hämta så
    mycket man hinner under säg tre sekunder och stoppa någonting på
    read-listan som hämtar nästa tre sekunder eller så.

    "Återse n inlägg av person x till möte y från datum z framåt"

    "Återse n inlägg av person x till möte y under de senaste k dagarna"

David Kågedal's avatar
David Kågedal committed
308
309
    Strunta i hemliga texter vid åar.

310
    Återse alla markerade borde gå att avbryta med nästa möte.
David Kågedal's avatar
David Kågedal committed
311

David Byers's avatar
David Byers committed
312
313
314
    Det vore trevligt om inlägg man återsåg inte bidde varnade för när
    man skriver kommentarer.

315

316
317
318
** INTERNA SAKER

    Inför en membership-cache.
319

David Kågedal's avatar
David Kågedal committed
320
321
322
    Har detta att göra med lite för optimistisk cache att göra? Kanske
    bör man läsa om person-staten innan man varnar för lapp på dörren?

323
    Reentrant blocking-do [FINNS, MEN ANVÄNDS INTE]
324

325
326
327
328
329
330

** FOTNOTER

    Skriv inte ut stora fonoter på en gång.

    Visa fotnoter på ett bättre sätt.
David Kågedal's avatar
David Kågedal committed
331

David Byers's avatar
X    
David Byers committed
332
    Kommandot kom-review-comments visar fotnoter sist, inte först.
333

David Kågedal's avatar
David Kågedal committed
334
    Det skulle vara bra om skönsvärde för att skriva fotnot vore den
David Byers's avatar
David Byers committed
335
336
    senaste text man själv skrev, inte den senaste man läste. Eller
    kanske den senaste man läste om det var man själv som skrev den?
337
338
    Snarare den sista man läste av sig själv alt. den sista man skrev
    om man inte har läst något av sig själv sedan dess.
339

David Byers's avatar
X    
David Byers committed
340

341
342
** ANVäNDARVäNLIGHET

David Byers's avatar
David Byers committed
343
344
345
    Man skulle kunna låta fönstrets titelrad indikera om man har
    olästa i någon session. Det skulle vara praktiskt för oss som har
    KOM igång ikonifierad i en separat Emacs större delen av tiden.
346
    Klickbara kommandon, vad nu det är.
347

David Byers's avatar
David Byers committed
348
349
350
351
    Det behövs dokumentation: fråmst användarhandledning, men det
    skulle inte skada med en kortfattad beskrivning av stabila delar
    av systemet för presumtiva kommandoskribenter.

David Byers's avatar
David Byers committed
352
    Språkgranskning av den engelska versionen.
353

David Byers's avatar
David Byers committed
354
355
356
357
358
359
360
361
362
363
364
    Det skulle vara bra om man kunde ange för varje inställning om den
    skulle sparas i servern eller inte. I princip är det enkelt, men
    det behövs ett gränssnitt för det.


** AUX-ITEMS

    Implementera en FAQ aux-item. Detta kommer att kräva en flagga
    till i servern som talar om för servern att inte garba ett inlägg.
    Det i sin tur kräver att man fixar dbck att forcera garb av inlägg
    med den här flaggan som inte borde ha den eller nåt sånt.
365
366


David Byers's avatar
David Byers committed
367
** MARKERINGAR
David Byers's avatar
David Byers committed
368

David Byers's avatar
David Byers committed
369
370
371
372
    JySKomska markeringstyper.


** DIVERSE OSORTERAT
David Byers's avatar
David Byers committed
373

374
375
376
    Lista sessioner, ungefär som lista klienter, men som ger mer
    sessionsinformation, till exempel idletid. Önskad av David Hedbor.

377
    Sortera vilkaslistan efter t.ex. idletid.
David Byers's avatar
David Byers committed
378

David Byers's avatar
David Byers committed
379
380
381
    Lista nyheter borde göra start of command innan den pratar om att
    vänta på medlemskapslistan. Den gör rätt ibland, men inte alltid.

David Byers's avatar
David Byers committed
382
383
384
385
386
387
    Man borde använda get-unread-confs för att lista ut vilka
    medlemsskap som skall prefetchas först. Då måste man ordna så att
    ingenting är beroende av att medlemsskapslistan hämtas i
    prioritetsordning. Prefetchen måste kunna sortera in medlemsskap i
    prioritetsordning när den får dem från servern.

David Byers's avatar
David Byers committed
388

389
390
391
392
393
394

Local variables:
mode: outline
paragraph-separate: "[ \t]*$"
outline-regexp: "[*]+"
end: