TODO 13 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
20
21
22
23
24
25
26
27
28
29
30
31
32
33
** OSORTERADE

    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
34
35
36
37
38
39
40
41
42
43
** 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
44
45
    Vi har kanske inte satt enable-multibyte-characters till nil i
    minibufferten. 
David Byers's avatar
David Byers committed
46
47


48
49
** VIKTIGA BUGGAR

David Byers's avatar
David Byers committed
50
51
52
53
54
55
56
57
58
    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
59
60
61
62

** OMBRYTNING

    Vi klarar inte emailheaders som är brutna över flera rader.
David Byers's avatar
David Byers committed
63
64
65
66
67
    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
68
69


70
** DEFERRED INSERT
71

David Byers's avatar
X    
David Byers committed
72
73
74
    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.
75

76
    Om ett namn som fylls i i efterhand gör att sista raden blir för
David Byers's avatar
David Byers committed
77
78
79
    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.)
80
81
82
83


** PREFETCH 

David Byers's avatar
X    
David Byers committed
84
85
86
    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
87

88
89
    Gå ur mötet man prefetchar genererar en bug.

90
91
92
    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.

93
94
95

** COMPLETING READ

David Byers's avatar
David Byers committed
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
    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
111
112
113
114
115
116
117
118
119
120
    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.

121
122
123

** HANTERING AV FOTNOTER

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

127
128
129
    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
130
131
132
133
    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...]
134

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

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

140
141

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

143
144
    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
145
    kommentar". Kommentaren ligger inte i brevlådan. (LÅG PRIORITET)
146

David Byers's avatar
David Byers committed
147

148
149
150
151
152
153
154
** 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
155
156
157
    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. 
158
159
160



David Byers's avatar
David Byers committed
161
162
* FÖRBÄTTRINGAR

163
164
165
166
167
168
169
170
171
** 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
172
173
        * En testimplementation av detta finns nu och fungerar rätt så
          bra. Att använda simple.el var dock inte en bra idé.
174
175
176


    Det vore skoj om lyskom.el kunde, som jag har för mig att någon
David Byers's avatar
David Byers committed
177
178
179
180
181
182
    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.
183
184
185
186
187
188
189
190

        * 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
191
        * Troligtvis är det bättre att använda aux-items för detta.
192
193


David Byers's avatar
David Byers committed
194

David Byers's avatar
David Byers committed
195
** SKRIVA INLÄGG
David Byers's avatar
David Byers committed
196

David Byers's avatar
David Byers committed
197
198
199
200
201
202
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
    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
241

242
243

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

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

247
248
249
250
251
252
253
    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
254
255
256
257
258
259
260
    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
261

262
** FILTER
David Byers's avatar
David Byers committed
263

264
265
266
267
268
269
270
271
272
    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
273

David Byers's avatar
David Byers committed
274
275
    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
276

277
278
279
280
281
    Filtrera asynkrona meddelanden (Pontus Lidman)


** MEDLEMSSKAPSINFORMATION

David Byers's avatar
X    
David Byers committed
282
    Lista medlemsskap borde hållas uppdaterad. Vi behöver hookar för
283
284
285
286
    - 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
287
288
289
290
    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...

291
292
293

** ÅTERSE

David Byers's avatar
X    
David Byers committed
294
295
296
297
298
299
300
301
    Å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
302
303
    Strunta i hemliga texter vid åar.

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

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

309

310
311
312
** INTERNA SAKER

    Inför en membership-cache.
313

David Kågedal's avatar
David Kågedal committed
314
315
316
    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?

317
    Reentrant blocking-do [FINNS, MEN ANVÄNDS INTE]
318

319
320
321
322
323
324

** 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
325

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

David Kågedal's avatar
David Kågedal committed
328
    Det skulle vara bra om skönsvärde för att skriva fotnot vore den
David Byers's avatar
David Byers committed
329
330
    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?
331
332
    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.
333

David Byers's avatar
X    
David Byers committed
334

335
336
** ANVäNDARVäNLIGHET

David Byers's avatar
David Byers committed
337
338
339
    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.
340
    Klickbara kommandon, vad nu det är.
341

David Byers's avatar
David Byers committed
342
343
344
345
    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
346
    Språkgranskning av den engelska versionen.
347

David Byers's avatar
David Byers committed
348
349
350
351
352
353
354
355
356
357
358
    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.
359
360


David Byers's avatar
David Byers committed
361
** MARKERINGAR
David Byers's avatar
David Byers committed
362

David Byers's avatar
David Byers committed
363
364
365
366
    JySKomska markeringstyper.


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

368
    Sortera vilkaslistan efter t.ex. idletid.
David Byers's avatar
David Byers committed
369

David Byers's avatar
David Byers committed
370
371
372
    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
373
374
375
376
377
378
    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
379

380
381
382
383
384
385

Local variables:
mode: outline
paragraph-separate: "[ \t]*$"
outline-regexp: "[*]+"
end: