Using saved parent location: http://bzr.savannah.gnu.org/r/emacs/trunk/ Now on revision 104221. ------------------------------------------------------------ revno: 104221 [merge] committer: Ulf Jasper branch nick: trunk timestamp: Fri 2011-05-13 21:35:36 +0200 message: newsticker: Moved icons to etc/newsticker/images lisp/ChangeLog: 2011-05-13 Ulf Jasper * net/newst-treeview.el (newsticker-treeview-face): Changed default family from helvetica to sans. (newsticker-treeview-tool-bar-map): Moved tool-bar icons to etc/images/newsticker. * net/newst-reader.el (newsticker-feed-face): Changed default family from helvetica to sans. * net/newst-plainview.el (newsticker-new-item-face) (newsticker-old-item-face, newsticker-immortal-item-face) (newsticker-obsolete-item-face, newsticker-date-face) (newsticker-statistics-face): Changed default family from helvetica to sans. (newsticker--plainview-tool-bar-map): Moved tool-bar icons to etc/images/newsticker. * net/newst-backend.el (newsticker--do-run-auto-mark-filter), (newsticker--process-auto-mark-filter-match): : Tell user about auto-marking. etc/ChangeLog: 2011-05-13 Ulf Jasper * images/newsticker: Added. * images/newsticker/browse-url.xpm: Added. * images/newsticker/get-all.xpm: Added. * images/newsticker/mark-immortal.xpm: Added. * images/newsticker/mark-read.xpm: Added. * images/newsticker/narrow.xpm: Added. * images/newsticker/next-feed.xpm: Added. * images/newsticker/next-item.xpm: Added. * images/newsticker/prev-feed.xpm: Added. * images/newsticker/prev-item.xpm: Added. * images/newsticker/update.xpm: Added. diff: === modified file 'etc/ChangeLog' --- etc/ChangeLog 2011-05-12 16:30:17 +0000 +++ etc/ChangeLog 2011-05-13 19:06:36 +0000 @@ -1,3 +1,17 @@ +2011-05-13 Ulf Jasper + + * images/newsticker: Added. + * images/newsticker/browse-url.xpm: Added. + * images/newsticker/get-all.xpm: Added. + * images/newsticker/mark-immortal.xpm: Added. + * images/newsticker/mark-read.xpm: Added. + * images/newsticker/narrow.xpm: Added. + * images/newsticker/next-feed.xpm: Added. + * images/newsticker/next-item.xpm: Added. + * images/newsticker/prev-feed.xpm: Added. + * images/newsticker/prev-item.xpm: Added. + * images/newsticker/update.xpm: Added. + 2011-05-10 Jim Meyering * MH-E-NEWS, PROBLEMS: Fix typo "the the -> the". === added directory 'etc/images/newsticker' === added file 'etc/images/newsticker/browse-url.xpm' --- etc/images/newsticker/browse-url.xpm 1970-01-01 00:00:00 +0000 +++ etc/images/newsticker/browse-url.xpm 2011-05-13 19:06:36 +0000 @@ -0,0 +1,66 @@ +/* XPM */ +static char * visit_xpm[] = { +"24 24 39 1", +" c None", +". c #000000", +"+ c #FFFFFF", +"@ c #00E63D", +"# c #00E83E", +"$ c #00E73D", +"% c #00E93E", +"& c #00E63C", +"* c #00E53C", +"= c #00E23B", +"- c #00E33B", +"; c #00E83D", +"> c #00E13A", +", c #00DD38", +"' c #00DE38", +") c #00E23A", +"! c #00E43C", +"~ c #00DF39", +"{ c #00DB37", +"] c #00D634", +"^ c #00D734", +"/ c #00E039", +"( c #00DC37", +"_ c #00D835", +": c #00D332", +"< c #00CD2F", +"[ c #00DB36", +"} c #00D433", +"| c #00CF30", +"1 c #00DA36", +"2 c #00D936", +"3 c #00D533", +"4 c #00D131", +"5 c #00CE2F", +"6 c #00CC2F", +"7 c #00CA2D", +"8 c #00C62B", +"9 c #00C52A", +"0 c #00BE27", +" ", +" ", +" . ", +" .+. ", +" .+++. ", +" .++.++. ", +" .++.@.++. ", +" .++.##$.++. ", +" .++.%%%#&.++. ", +" .++.$%%%#*=.++. ", +" .++.-@;##$*>,.++. ", +" .++.')!&@@*=~{].++. ", +" .++.^{~>---)/(_:<.++. ", +" .++.^[,~/~'(_}|.++. ", +" .++.]_1[12^:|.++. ", +" .++.:}33:45.++. ", +" .++.<5567.++. ", +" .++.889.++. ", +" .++.0.++. ", +" .++.++. ", +" .+++. ", +" .+. ", +" . ", +" "}; === added file 'etc/images/newsticker/get-all.xpm' --- etc/images/newsticker/get-all.xpm 1970-01-01 00:00:00 +0000 +++ etc/images/newsticker/get-all.xpm 2011-05-13 19:06:36 +0000 @@ -0,0 +1,97 @@ +/* XPM */ +static char * get_all_xpm[] = { +"24 24 70 1", +" c None", +". c #000000", +"+ c #F3DA00", +"@ c #F5DF00", +"# c #F7E300", +"$ c #F9E700", +"% c #FAEA00", +"& c #FBEC00", +"* c #FBED00", +"= c #FCEE00", +"- c #FAEB00", +"; c #F9E800", +"> c #F8E500", +", c #F6E000", +"' c #F4DB00", +") c #F1D500", +"! c #EFD000", +"~ c #B7CA00", +"{ c #BFD100", +"] c #C5D700", +"^ c #CBDB00", +"/ c #CFDF00", +"( c #D2E200", +"_ c #D4E400", +": c #D3E300", +"< c #D0E000", +"[ c #CCDD00", +"} c #C7D800", +"| c #C1D300", +"1 c #BACC00", +"2 c #B1C500", +"3 c #A8BC00", +"4 c #20A900", +"5 c #22AF00", +"6 c #24B500", +"7 c #26B900", +"8 c #27BC00", +"9 c #27BE00", +"0 c #28BF00", +"a c #27BD00", +"b c #26BA00", +"c c #25B600", +"d c #23B100", +"e c #21AB00", +"f c #1FA400", +"g c #1C9B00", +"h c #21AA00", +"i c #24B300", +"j c #25B800", +"k c #25B700", +"l c #24B400", +"m c #23B000", +"n c #1FA500", +"o c #1D9E00", +"p c #20A800", +"q c #21AC00", +"r c #23B200", +"s c #22AD00", +"t c #1D9F00", +"u c #20A700", +"v c #1EA100", +"w c #1C9C00", +"x c #1DA000", +"y c #1B9800", +"z c #1A9600", +"A c #1A9700", +"B c #1A9500", +"C c #199200", +"D c #189100", +"E c #178C00", +" ", +" ", +" ", +" ", +" ................... ", +" .+@#$%&*=*&-;>,')!. ", +" ................... ", +" ", +" ................... ", +" .~{]^/(___:<[}|123. ", +" ................... ", +" ", +" ................... ", +" .45678909abcdefg. ", +" .h5icj7jklmeno. ", +" .pq5drrmshft. ", +" .fu4h4pnvw. ", +" .oxvxtwy. ", +" .zAAzB. ", +" .CCD. ", +" .E. ", +" . ", +" ", +" "}; === added file 'etc/images/newsticker/mark-immortal.xpm' --- etc/images/newsticker/mark-immortal.xpm 1970-01-01 00:00:00 +0000 +++ etc/images/newsticker/mark-immortal.xpm 2011-05-13 19:06:36 +0000 @@ -0,0 +1,120 @@ +/* XPM */ +static char * mark_immortal_xpm[] = { +"24 24 93 2", +" c None", +". c #171717", +"+ c #030303", +"@ c #000000", +"# c #181818", +"$ c #090909", +"% c #FFC960", +"& c #FFCB61", +"* c #FFCB62", +"= c #FFC961", +"- c #FFC75F", +"; c #FFC65E", +"> c #FFCA61", +", c #FFCD63", +"' c #FFCF65", +") c #FFD065", +"! c #FFCE64", +"~ c #FFC35C", +"{ c #FFC45D", +"] c #FFD166", +"^ c #FFD267", +"/ c #FFD368", +"( c #FFD167", +"_ c #FFC05A", +": c #010101", +"< c #040404", +"[ c #FFCC62", +"} c #FFD569", +"| c #FFD56A", +"1 c #FFC860", +"2 c #FFC25B", +"3 c #FFBB56", +"4 c #020202", +"5 c #060606", +"6 c #FFC15B", +"7 c #FFC85F", +"8 c #FFD469", +"9 c #FFD66A", +"0 c #FFBC57", +"a c #1B1B1B", +"b c #070707", +"c c #FFBA55", +"d c #FFB451", +"e c #FFB954", +"f c #FFB350", +"g c #FFB652", +"h c #FFBE58", +"i c #FFCD64", +"j c #FFD066", +"k c #FFC059", +"l c #FFB14E", +"m c #0B0B0B", +"n c #FFBB55", +"o c #FFC15A", +"p c #FFB552", +"q c #FFAD4B", +"r c #080808", +"s c #FFAF4C", +"t c #FFB853", +"u c #FFA948", +"v c #050505", +"w c #FFB04E", +"x c #FFB753", +"y c #FFBC56", +"z c #FFC55D", +"A c #FFC55E", +"B c #FFC45C", +"C c #FFBD57", +"D c #FFB854", +"E c #FFB34F", +"F c #FFAB4A", +"G c #FFA545", +"H c #FFAA49", +"I c #FFB04D", +"J c #FFB551", +"K c #FFBF58", +"L c #FFB24F", +"M c #FFAC4A", +"N c #FFA646", +"O c #FFA344", +"P c #FFA848", +"Q c #FFB14F", +"R c #FFAF4D", +"S c #FFA546", +"T c #FFA243", +"U c #FFA445", +"V c #FFAE4C", +"W c #FFA444", +"X c #FFA142", +"Y c #FF9F41", +"Z c #0A0A0A", +"` c #FF9E40", +" . c #FF9F40", +" ", +" ", +" ", +" . + @ @ + # ", +" $ @ % & * * = - + + ", +" @ ; > , ' ) ' ! * - ~ @ ", +" @ { > ! ] ^ / / ( ' * ; _ : ", +" < _ ; [ ) / } | } / ] , 1 2 3 4 ", +" 5 6 7 , ] 8 9 9 9 } ^ ! = ~ 0 a ", +" b c 6 - , ] 8 9 9 9 } ^ ! % ~ 0 d 5 ", +" : e _ ; * ) / 8 } } / ] , 1 2 3 f 5 ", +" : g h { = i j ^ / ^ ] ! * ; k e l m ", +" : f n o ; > , ' ) ' ! * - 2 0 p q r ", +" : s g 0 6 ; % > * * = - ~ h t l u r ", +" v u w x y k ~ z A z B o C D E F G b ", +" 5 H I J e 0 h K h C c x L M N . ", +" 4 O P q Q d g x g J L R H S T < ", +" @ T U P F q V q M H N W X + ", +" @ Y T O W G G W O X Y @ ", +" 4 Z ` Y Y Y .` 4 4 ", +" 5 : : @ @ Z ", +" ", +" ", +" "}; === added file 'etc/images/newsticker/mark-read.xpm' --- etc/images/newsticker/mark-read.xpm 1970-01-01 00:00:00 +0000 +++ etc/images/newsticker/mark-read.xpm 2011-05-13 19:06:36 +0000 @@ -0,0 +1,71 @@ +/* XPM */ +static char * mark_read_xpm[] = { +"24 24 44 1", +" c None", +". c #C20000", +"+ c #BE0000", +"@ c #C70000", +"# c #CE0000", +"$ c #C90000", +"% c #BD0000", +"& c #CB0000", +"* c #D10000", +"= c #D70000", +"- c #D30000", +"; c #CD0000", +"> c #C60000", +", c #D40000", +"' c #DA0000", +") c #DE0000", +"! c #DB0000", +"~ c #D60000", +"{ c #D00000", +"] c #DC0000", +"^ c #E00000", +"/ c #E40000", +"( c #E10000", +"_ c #DD0000", +": c #D80000", +"< c #E50000", +"[ c #E70000", +"} c #E60000", +"| c #E20000", +"1 c #E90000", +"2 c #E80000", +"3 c #E30000", +"4 c #DF0000", +"5 c #D90000", +"6 c #CC0000", +"7 c #C10000", +"8 c #C30000", +"9 c #BF0000", +"0 c #B90000", +"a c #BC0000", +"b c #BB0000", +"c c #B80000", +"d c #B50000", +"e c #B70000", +" ", +" ", +" ", +" . + ", +" +@# $.% ", +" &*= -;> ", +" ,') !~{ ", +" ]^/ (_: ", +" (<[ }|) ", +" <[1 2<| ", +" }222[< ", +" }}}< ", +" 333| ", +" _4^4)] ", +" ~:' 5=- ", +" 6{- *#$ ", +" 7>$ @89 ", +" 0a+ %bc ", +" ddc edd ", +" ddd ddd ", +" d d ", +" ", +" ", +" "}; === added file 'etc/images/newsticker/narrow.xpm' --- etc/images/newsticker/narrow.xpm 1970-01-01 00:00:00 +0000 +++ etc/images/newsticker/narrow.xpm 2011-05-13 19:06:36 +0000 @@ -0,0 +1,75 @@ +/* XPM */ +static char * narrow_xpm[] = { +"24 24 48 1", +" c None", +". c #000000", +"+ c #969696", +"@ c #9E9E9E", +"# c #A4A4A4", +"$ c #AAAAAA", +"% c #AEAEAE", +"& c #B1B1B1", +"* c #B3B3B3", +"= c #B4B4B4", +"- c #B2B2B2", +"; c #AFAFAF", +"> c #ABABAB", +", c #A6A6A6", +"' c #A0A0A0", +") c #989898", +"! c #909090", +"~ c #73AAD4", +"{ c #7AB2DA", +"] c #7FB8DF", +"^ c #84BDE3", +"/ c #88C2E7", +"( c #8BC5E9", +"_ c #8DC7EB", +": c #8CC6EA", +"< c #89C3E8", +"[ c #86BFE5", +"} c #81BAE1", +"| c #7BB3DC", +"1 c #75ACD6", +"2 c #6DA4CF", +"3 c #979797", +"4 c #A3A3A3", +"5 c #A8A8A8", +"6 c #ADADAD", +"7 c #ACACAC", +"8 c #A9A9A9", +"9 c #A5A5A5", +"0 c #9A9A9A", +"a c #929292", +"b c #8C8C8C", +"c c #808080", +"d c #818181", +"e c #838383", +"f c #848484", +"g c #858585", +"h c #868686", +"i c #828282", +" ", +" ", +" ", +" .................. ", +" .+@#$%&*=*-;>,')!. ", +" .................. ", +" ", +" ", +" .................. ", +" .~{]^/(___:<[}|12. ", +" .................. ", +" ", +" ", +" .................. ", +" .!3@45>666789'0ab. ", +" .................. ", +" ", +" ", +" .................. ", +" .cccdefghhgficccc. ", +" .................. ", +" ", +" ", +" "}; === added file 'etc/images/newsticker/next-feed.xpm' --- etc/images/newsticker/next-feed.xpm 1970-01-01 00:00:00 +0000 +++ etc/images/newsticker/next-feed.xpm 2011-05-13 19:06:36 +0000 @@ -0,0 +1,84 @@ +/* XPM */ +static char * next_feed_xpm[] = { +"24 24 57 1", +" c None", +". c #000000", +"+ c #6CA2CE", +"@ c #75ADD6", +"# c #71A8D3", +"$ c #79B1DA", +"% c #7EB7DE", +"& c #7DB5DD", +"* c #81BAE1", +"= c #85BEE4", +"- c #78B0D9", +"; c #7FB7DE", +"> c #83BCE3", +", c #87C1E6", +"' c #8AC4E9", +") c #7BB3DB", +"! c #80B8DF", +"~ c #88C2E7", +"{ c #8BC5E9", +"] c #8DC7EB", +"^ c #7CB4DC", +"/ c #7FB8DF", +"( c #84BDE3", +"_ c #7BB3DC", +": c #83BCE2", +"< c #87C0E6", +"[ c #8AC4E8", +"} c #8BC5EA", +"| c #8CC6EA", +"1 c #88C1E6", +"2 c #89C3E8", +"3 c #8AC3E8", +"4 c #7EB6DE", +"5 c #82BBE1", +"6 c #86C0E5", +"7 c #87C0E5", +"8 c #75ACD6", +"9 c #7AB2DA", +"0 c #81B9E0", +"a c #82BBE2", +"b c #71A8D2", +"c c #70A7D1", +"d c #74ACD6", +"e c #699FCC", +"f c #6EA5D0", +"g c #72A9D4", +"h c #669CC9", +"i c #6298C5", +"j c #679DCA", +"k c #6BA1CD", +"l c #6095C3", +"m c #5C91C0", +"n c #5F94C2", +"o c #5B90C0", +"p c #588CBC", +"q c #578CBC", +"r c #5589BA", +" ", +" ", +" . ... ", +" .. .+. ", +" .@. .#. ", +" .$%. .@. ", +" .&*=. .-. ", +" .;>,'. .). ", +" .!=~{]. .^. ", +" ./(~{]]. ._. ", +" .%:<[}||. .). ", +" .&*=12'3~. .-. ", +" .$45=6<7. .@. ", +" .8940a:. .b. ", +" .cd-)&. .+. ", +" .efg8. .h. ", +" .ijk. .l. ", +" .mn. .o. ", +" .p. .q. ", +" .. .r. ", +" . ... ", +" ", +" ", +" "}; === added file 'etc/images/newsticker/next-item.xpm' --- etc/images/newsticker/next-item.xpm 1970-01-01 00:00:00 +0000 +++ etc/images/newsticker/next-item.xpm 2011-05-13 19:06:36 +0000 @@ -0,0 +1,69 @@ +/* XPM */ +static char * next_xpm[] = { +"24 24 42 1", +" c None", +". c #000000", +"+ c #7EB6DE", +"@ c #82BBE2", +"# c #85BEE4", +"$ c #88C1E7", +"% c #8AC3E8", +"& c #87C1E6", +"* c #8AC4E9", +"= c #8CC6EA", +"- c #8CC6EB", +"; c #88C2E7", +"> c #8BC5E9", +", c #8DC7EB", +"' c #87C0E6", +") c #8AC4E8", +"! c #8BC5EA", +"~ c #8BC4E9", +"{ c #88C1E6", +"] c #89C3E8", +"^ c #86BFE5", +"/ c #83BBE2", +"( c #82BBE1", +"_ c #86C0E5", +": c #87C0E5", +"< c #83BCE2", +"[ c #81B9E0", +"} c #81BAE1", +"| c #78B0D9", +"1 c #7BB3DB", +"2 c #7DB5DD", +"3 c #7DB6DD", +"4 c #72A9D4", +"5 c #75ACD6", +"6 c #76AED7", +"7 c #77AFD8", +"8 c #6BA1CD", +"9 c #6EA4CF", +"0 c #6FA6D1", +"a c #6298C6", +"b c #659BC8", +"c c #5C91C0", +" ", +" ", +" . ", +" .. ", +" .+. ", +" .@#. ", +" .#$%. ", +" .&*=-. ", +" .;>,,,. ", +" .;>,,,=. ", +" .')!==~;. ", +" .#{]*%;^/. ", +" .(#_':#<. ", +" .+[@ c #88C2E7", +", c #85BEE4", +"' c #80B9E0", +") c #80B8DF", +"! c #8CC6EA", +"~ c #89C3E8", +"{ c #86BFE5", +"] c #81BAE1", +"^ c #7CB4DC", +"/ c #7FB8DF", +"( c #8DC7EB", +"_ c #7BB3DC", +": c #7EB7DE", +"< c #8BC4E9", +"[ c #8AC4E9", +"} c #8AC3E8", +"| c #87C0E6", +"1 c #87C0E5", +"2 c #83BCE2", +"3 c #75ACD6", +"4 c #7FB7DF", +"5 c #77AED8", +"6 c #71A8D2", +"7 c #70A7D1", +"8 c #76ADD7", +"9 c #6CA2CE", +"0 c #699FCC", +"a c #73AAD4", +"b c #6BA1CD", +"c c #669CC9", +"d c #6298C5", +"e c #689ECB", +"f c #6499C7", +"g c #6095C3", +"h c #5C91C0", +"i c #5E93C2", +"j c #5B90C0", +"k c #588CBC", +"l c #578CBC", +"m c #5589BA", +" ", +" ", +" ... . ", +" .+. .. ", +" .@. .#. ", +" .$. .%@. ", +" .&. .*=-. ", +" .;. .>,'%. ", +" .). .!~{]^. ", +" ./. .(!~{]_. ", +" .:. .!!<>,'%. ", +" .&. .~[}>{*=-. ", +" .$. .|1,2/%@. ", +" .3. .*]4%56. ", +" .7. .^$8#9. ", +" .0. .a7bc. ", +" .d. .efg. ", +" .h. .ij. ", +" .k. .l. ", +" .m. .. ", +" ... . ", +" ", +" ", +" "}; === added file 'etc/images/newsticker/prev-item.xpm' --- etc/images/newsticker/prev-item.xpm 1970-01-01 00:00:00 +0000 +++ etc/images/newsticker/prev-item.xpm 2011-05-13 19:06:36 +0000 @@ -0,0 +1,66 @@ +/* XPM */ +static char * previous_xpm[] = { +"24 24 39 1", +" c None", +". c #000000", +"+ c #7BB3DB", +"@ c #83BCE2", +"# c #7FB8DF", +"$ c #89C2E7", +"% c #86BFE5", +"& c #83BBE2", +"* c #8CC6EA", +"= c #8BC4E9", +"- c #88C2E7", +"; c #85BEE4", +"> c #8DC7EB", +", c #89C3E8", +"' c #8AC4E8", +") c #8BC5EA", +"! c #88C1E6", +"~ c #8AC4E9", +"{ c #8AC3E8", +"] c #86C0E5", +"^ c #87C0E6", +"/ c #87C0E5", +"( c #82BBE2", +"_ c #81BAE1", +": c #7FB7DF", +"< c #7DB6DD", +"[ c #7DB5DD", +"} c #7CB4DC", +"| c #79B1DA", +"1 c #76ADD7", +"2 c #77AFD8", +"3 c #73AAD4", +"4 c #70A7D1", +"5 c #6EA5D0", +"6 c #6CA2CE", +"7 c #689ECB", +"8 c #6399C7", +"9 c #6095C4", +"0 c #5C90C0", +" ", +" ", +" . ", +" .. ", +" .+. ", +" .@#. ", +" .$%&. ", +" .*=-;. ", +" .>>*,%. ", +" .>>>*,%. ", +" .')**=-;. ", +" .;!,~{-%&. ", +" .;]^/;@#. ", +" .(@&_:+. ", +" .<[}|1. ", +" .2134. ", +" .567. ", +" .89. ", +" .0. ", +" .. ", +" . ", +" ", +" ", +" "}; === added file 'etc/images/newsticker/update.xpm' --- etc/images/newsticker/update.xpm 1970-01-01 00:00:00 +0000 +++ etc/images/newsticker/update.xpm 2011-05-13 19:06:36 +0000 @@ -0,0 +1,64 @@ +/* XPM */ +static char * update_xpm[] = { +"24 24 37 1", +" c None", +". c #076D00", +"+ c #0A8600", +"@ c #0A8800", +"# c #098400", +"$ c #087200", +"% c #087900", +"& c #098500", +"* c #098100", +"= c #087600", +"- c #097E00", +"; c #097F00", +"> c #0A8700", +", c #0A8C00", +"' c #097C00", +") c #098300", +"! c #0A8900", +"~ c #0A8E00", +"{ c #0B9200", +"] c #087700", +"^ c #076E00", +"/ c #076C00", +"( c #076B00", +"_ c #076A00", +": c #076900", +"< c #076800", +"[ c #066700", +"} c #066500", +"| c #066400", +"1 c #066300", +"2 c #066600", +"3 c #066200", +"4 c #076700", +"5 c #065E00", +"6 c #066100", +"7 c #065F00", +"8 c #066000", +" ", +" ", +" ", +" . +@@@+# ", +" $% &@ +* ", +" =-# ; ", +" %*>, ' ", +" ')!~{ = ", +" ]$ ", +" ^ ^ ", +" . . ", +" / ( ", +" _ : ", +" < [ ", +" } | ", +" [[ ", +" 1 $.:23 ", +" 3 4}35 ", +" 6 655 ", +" 76 85 55 ", +" 5555555 5 ", +" ", +" ", +" "}; === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2011-05-13 19:27:52 +0000 +++ lisp/ChangeLog 2011-05-13 19:35:36 +0000 @@ -1,3 +1,25 @@ +2011-05-13 Ulf Jasper + + * net/newst-treeview.el (newsticker-treeview-face): Changed default + family from helvetica to sans. + (newsticker-treeview-tool-bar-map): Moved tool-bar icons to + etc/images/newsticker. + + * net/newst-reader.el (newsticker-feed-face): Changed default + family from helvetica to sans. + + * net/newst-plainview.el (newsticker-new-item-face) + (newsticker-old-item-face, newsticker-immortal-item-face) + (newsticker-obsolete-item-face, newsticker-date-face) + (newsticker-statistics-face): Changed default family from + helvetica to sans. + (newsticker--plainview-tool-bar-map): Moved tool-bar icons to + etc/images/newsticker. + + * net/newst-backend.el (newsticker--do-run-auto-mark-filter), + (newsticker--process-auto-mark-filter-match): : Tell user about + auto-marking. + 2011-05-13 Didier Verna Common Lisp indentation improvements on defmethod and lambda-lists. === modified file 'lisp/net/newst-backend.el' --- lisp/net/newst-backend.el 2011-01-26 08:36:39 +0000 +++ lisp/net/newst-backend.el 2011-05-13 19:06:36 +0000 @@ -6,7 +6,7 @@ ;; Filename: newst-backend.el ;; URL: http://www.nongnu.org/newsticker ;; Keywords: News, RSS, Atom -;; Time-stamp: "6. Dezember 2009, 19:15:32 (ulf)" +;; Time-stamp: "13. Mai 2011, 20:47:05 (ulf)" ;; Package: newsticker ;; ====================================================================== @@ -2264,23 +2264,30 @@ "Actually compare ITEM against the pattern-LIST. LIST must be an element of `newsticker-auto-mark-filter-list'." (mapc (lambda (pattern) - (let ((age (nth 0 pattern)) - (place (nth 1 pattern)) + (let ((place (nth 1 pattern)) (regexp (nth 2 pattern)) (title (newsticker--title item)) (desc (newsticker--desc item))) (when (or (eq place 'title) (eq place 'all)) (when (and title (string-match regexp title)) - (newsticker--debug-msg "Auto-marking as %s: `%s'" - age (newsticker--title item)) - (setcar (nthcdr 4 item) age))) + (newsticker--process-auto-mark-filter-match item pattern))) (when (or (eq place 'description) (eq place 'all)) (when (and desc (string-match regexp desc)) - (newsticker--debug-msg "Auto-marking as %s: `%s'" - age (newsticker--title item)) - (setcar (nthcdr 4 item) age))))) + (newsticker--process-auto-mark-filter-match item pattern))))) list)) +(defun newsticker--process-auto-mark-filter-match (item pattern) + "Process ITEM that matches an auto-mark-filter PATTERN." + (let ((age (nth 0 pattern)) + (place (nth 1 pattern)) + (regexp (nth 2 pattern))) + (newsticker--debug-msg "Auto-mark-filter %s matches `%s'" + pattern (newsticker--title item)) + (setcar (nthcdr 4 item) age) + (nconc (newsticker--extra item) + (list (list 'newsticker-auto-mark nil + (format "age=%s, title/desc=%s, regexp=%s" + age place regexp)))))) ;; ====================================================================== ;;; Hook samples === modified file 'lisp/net/newst-plainview.el' --- lisp/net/newst-plainview.el 2011-02-10 16:56:00 +0000 +++ lisp/net/newst-plainview.el 2011-05-13 19:06:36 +0000 @@ -5,7 +5,7 @@ ;; Author: Ulf Jasper ;; Filename: newst-plainview.el ;; URL: http://www.nongnu.org/newsticker -;; Time-stamp: "6. Dezember 2009, 19:17:02 (ulf)" +;; Time-stamp: "13. Mai 2011, 19:28:34 (ulf)" ;; Package: newsticker ;; ====================================================================== @@ -157,49 +157,49 @@ (defface newsticker-new-item-face '((((class color) (background dark)) - (:family "helvetica" :bold t)) + (:family "sans" :bold t)) (((class color) (background light)) - (:family "helvetica" :bold t))) + (:family "sans" :bold t))) "Face for new news items." :group 'newsticker-faces) (defface newsticker-old-item-face '((((class color) (background dark)) - (:family "helvetica" :bold t :foreground "orange3")) + (:family "sans" :bold t :foreground "orange3")) (((class color) (background light)) - (:family "helvetica" :bold t :foreground "red4"))) + (:family "sans" :bold t :foreground "red4"))) "Face for old news items." :group 'newsticker-faces) (defface newsticker-immortal-item-face '((((class color) (background dark)) - (:family "helvetica" :bold t :italic t :foreground "orange")) + (:family "sans" :bold t :italic t :foreground "orange")) (((class color) (background light)) - (:family "helvetica" :bold t :italic t :foreground "blue"))) + (:family "sans" :bold t :italic t :foreground "blue"))) "Face for immortal news items." :group 'newsticker-faces) (defface newsticker-obsolete-item-face '((((class color) (background dark)) - (:family "helvetica" :bold t :strike-through t)) + (:family "sans" :bold t :strike-through t)) (((class color) (background light)) - (:family "helvetica" :bold t :strike-through t))) + (:family "sans" :bold t :strike-through t))) "Face for old news items." :group 'newsticker-faces) (defface newsticker-date-face '((((class color) (background dark)) - (:family "helvetica" :italic t :height 0.8)) + (:family "sans" :italic t :height 0.8)) (((class color) (background light)) - (:family "helvetica" :italic t :height 0.8))) + (:family "sans" :italic t :height 0.8))) "Face for newsticker dates." :group 'newsticker-faces) (defface newsticker-statistics-face '((((class color) (background dark)) - (:family "helvetica" :italic t :height 0.8)) + (:family "sans" :italic t :height 0.8)) (((class color) (background light)) - (:family "helvetica" :italic t :height 0.8))) + (:family "sans" :italic t :height 0.8))) "Face for newsticker dates." :group 'newsticker-faces) @@ -300,70 +300,56 @@ nil (if (boundp 'tool-bar-map) (let ((tool-bar-map (make-sparse-keymap))) + (tool-bar-add-item "newsticker/prev-feed" + 'newsticker-previous-feed + 'newsticker-previous-feed + :help "Go to previous feed" + :enable '(newsticker-previous-feed-available-p)) + (tool-bar-add-item "newsticker/prev-item" + 'newsticker-previous-item + 'newsticker-previous-item + :help "Go to previous item" + :enable '(newsticker-previous-item-available-p)) + (tool-bar-add-item "newsticker/next-item" + 'newsticker-next-item + 'newsticker-next-item + :help "Go to next item" + :enable '(newsticker-next-item-available-p)) + (tool-bar-add-item "newsticker/next-feed" + 'newsticker-next-feed + 'newsticker-next-feed + :help "Go to next feed" + :enable '(newsticker-next-feed-available-p)) + (tool-bar-add-item "newsticker/narrow" + 'newsticker-toggle-auto-narrow-to-feed + 'newsticker-toggle-auto-narrow-to-feed + :help "Toggle visibility of other feeds") + (tool-bar-add-item "newsticker/mark-immortal" + 'newsticker-mark-item-at-point-as-immortal + 'newsticker-mark-item-at-point-as-immortal + :help "Mark current item as immortal" + :enable '(newsticker-item-not-immortal-p)) + (tool-bar-add-item "newsticker/mark-read" + 'newsticker-mark-item-at-point-as-read + 'newsticker-mark-item-at-point-as-read + :help "Mark current item as read" + :enable '(newsticker-item-not-old-p)) + (tool-bar-add-item "newsticker/get-all-news" + 'newsticker-get-all-news + 'newsticker-get-all-news + :help "Get news for all feeds") + (tool-bar-add-item "newsticker/update" + 'newsticker-buffer-force-update + 'newsticker-buffer-force-update + :help "Update newsticker buffer" + :enable '(not newsticker--buffer-uptodate-p)) + (tool-bar-add-item "newsticker/browse-url" + 'newsticker-browse-url + 'newsticker-browse-url + :help "Browse URL for item at point") + ;; standard icons / actions (define-key tool-bar-map [newsticker-sep-1] (list 'menu-item "--double-line")) - (define-key tool-bar-map [newsticker-browse-url] - (list 'menu-item "newsticker-browse-url" 'newsticker-browse-url - :visible t - :help "Browse URL for item at point" - :image newsticker--browse-image)) - (define-key tool-bar-map [newsticker-buffer-force-update] - (list 'menu-item "newsticker-buffer-force-update" - 'newsticker-buffer-force-update - :visible t - :help "Update newsticker buffer" - :image newsticker--update-image - :enable '(not newsticker--buffer-uptodate-p))) - (define-key tool-bar-map [newsticker-get-all-news] - (list 'menu-item "newsticker-get-all-news" 'newsticker-get-all-news - :visible t - :help "Get news for all feeds" - :image newsticker--get-all-image)) - (define-key tool-bar-map [newsticker-mark-item-at-point-as-read] - (list 'menu-item "newsticker-mark-item-at-point-as-read" - 'newsticker-mark-item-at-point-as-read - :visible t - :image newsticker--mark-read-image - :help "Mark current item as read" - :enable '(newsticker-item-not-old-p))) - (define-key tool-bar-map [newsticker-mark-item-at-point-as-immortal] - (list 'menu-item "newsticker-mark-item-at-point-as-immortal" - 'newsticker-mark-item-at-point-as-immortal - :visible t - :image newsticker--mark-immortal-image - :help "Mark current item as immortal" - :enable '(newsticker-item-not-immortal-p))) - (define-key tool-bar-map [newsticker-toggle-auto-narrow-to-feed] - (list 'menu-item "newsticker-toggle-auto-narrow-to-feed" - 'newsticker-toggle-auto-narrow-to-feed - :visible t - :help "Toggle visibility of other feeds" - :image newsticker--narrow-image)) - (define-key tool-bar-map [newsticker-next-feed] - (list 'menu-item "newsticker-next-feed" 'newsticker-next-feed - :visible t - :help "Go to next feed" - :image newsticker--next-feed-image - :enable '(newsticker-next-feed-available-p))) - (define-key tool-bar-map [newsticker-next-item] - (list 'menu-item "newsticker-next-item" 'newsticker-next-item - :visible t - :help "Go to next item" - :image newsticker--next-item-image - :enable '(newsticker-next-item-available-p))) - (define-key tool-bar-map [newsticker-previous-item] - (list 'menu-item "newsticker-previous-item" 'newsticker-previous-item - :visible t - :help "Go to previous item" - :image newsticker--previous-item-image - :enable '(newsticker-previous-item-available-p))) - (define-key tool-bar-map [newsticker-previous-feed] - (list 'menu-item "newsticker-previous-feed" 'newsticker-previous-feed - :visible t - :help "Go to previous feed" - :image newsticker--previous-feed-image - :enable '(newsticker-previous-feed-available-p))) - ;; standard icons / actions (tool-bar-add-item "close" 'newsticker-close-buffer 'newsticker-close-buffer === modified file 'lisp/net/newst-reader.el' --- lisp/net/newst-reader.el 2011-01-26 08:36:39 +0000 +++ lisp/net/newst-reader.el 2011-05-13 19:06:36 +0000 @@ -5,7 +5,7 @@ ;; Author: Ulf Jasper ;; Filename: newst-reader.el ;; URL: http://www.nongnu.org/newsticker -;; Time-stamp: "6. Dezember 2009, 19:16:38 (ulf)" +;; Time-stamp: "13. Mai 2011, 20:55:24 (ulf)" ;; Package: newsticker ;; ====================================================================== @@ -147,9 +147,9 @@ (defface newsticker-feed-face '((((class color) (background dark)) - (:family "helvetica" :bold t :height 1.2 :foreground "misty rose")) + (:family "sans" :bold t :height 1.2 :foreground "white")) (((class color) (background light)) - (:family "helvetica" :bold t :height 1.2 :foreground "black"))) + (:family "sans" :bold t :height 1.2 :foreground "black"))) "Face for news feeds." :group 'newsticker-faces) @@ -291,866 +291,6 @@ ;; ====================================================================== ;;; Toolbar ;; ====================================================================== -(defconst newsticker--next-item-image - (and (fboundp 'image-type-available-p) - (image-type-available-p 'xpm) - (create-image "/* XPM */ -static char * next_xpm[] = { -\"24 24 42 1\", -\" c None\", -\". c #000000\", -\"+ c #7EB6DE\", -\"@ c #82BBE2\", -\"# c #85BEE4\", -\"$ c #88C1E7\", -\"% c #8AC3E8\", -\"& c #87C1E6\", -\"* c #8AC4E9\", -\"= c #8CC6EA\", -\"- c #8CC6EB\", -\"; c #88C2E7\", -\"> c #8BC5E9\", -\", c #8DC7EB\", -\"' c #87C0E6\", -\") c #8AC4E8\", -\"! c #8BC5EA\", -\"~ c #8BC4E9\", -\"{ c #88C1E6\", -\"] c #89C3E8\", -\"^ c #86BFE5\", -\"/ c #83BBE2\", -\"( c #82BBE1\", -\"_ c #86C0E5\", -\": c #87C0E5\", -\"< c #83BCE2\", -\"[ c #81B9E0\", -\"} c #81BAE1\", -\"| c #78B0D9\", -\"1 c #7BB3DB\", -\"2 c #7DB5DD\", -\"3 c #7DB6DD\", -\"4 c #72A9D4\", -\"5 c #75ACD6\", -\"6 c #76AED7\", -\"7 c #77AFD8\", -\"8 c #6BA1CD\", -\"9 c #6EA4CF\", -\"0 c #6FA6D1\", -\"a c #6298C6\", -\"b c #659BC8\", -\"c c #5C91C0\", -\" \", -\" \", -\" . \", -\" .. \", -\" .+. \", -\" .@#. \", -\" .#$%. \", -\" .&*=-. \", -\" .;>,,,. \", -\" .;>,,,=. \", -\" .')!==~;. \", -\" .#{]*%;^/. \", -\" .(#_':#<. \", -\" .+[@ c #8DC7EB\", -\", c #89C3E8\", -\"' c #8AC4E8\", -\") c #8BC5EA\", -\"! c #88C1E6\", -\"~ c #8AC4E9\", -\"{ c #8AC3E8\", -\"] c #86C0E5\", -\"^ c #87C0E6\", -\"/ c #87C0E5\", -\"( c #82BBE2\", -\"_ c #81BAE1\", -\": c #7FB7DF\", -\"< c #7DB6DD\", -\"[ c #7DB5DD\", -\"} c #7CB4DC\", -\"| c #79B1DA\", -\"1 c #76ADD7\", -\"2 c #77AFD8\", -\"3 c #73AAD4\", -\"4 c #70A7D1\", -\"5 c #6EA5D0\", -\"6 c #6CA2CE\", -\"7 c #689ECB\", -\"8 c #6399C7\", -\"9 c #6095C4\", -\"0 c #5C90C0\", -\" \", -\" \", -\" . \", -\" .. \", -\" .+. \", -\" .@#. \", -\" .$%&. \", -\" .*=-;. \", -\" .>>*,%. \", -\" .>>>*,%. \", -\" .')**=-;. \", -\" .;!,~{-%&. \", -\" .;]^/;@#. \", -\" .(@&_:+. \", -\" .<[}|1. \", -\" .2134. \", -\" .567. \", -\" .89. \", -\" .0. \", -\" .. \", -\" . \", -\" \", -\" \", -\" \"}; -" - 'xpm t)) - "Image for the previous item button.") - -(defconst newsticker--previous-feed-image - (and (fboundp 'image-type-available-p) - (image-type-available-p 'xpm) - (create-image "/* XPM */ -static char * prev_feed_xpm[] = { -\"24 24 52 1\", -\" c None\", -\". c #000000\", -\"+ c #70A7D2\", -\"@ c #75ADD6\", -\"# c #71A8D3\", -\"$ c #79B1DA\", -\"% c #7BB3DB\", -\"& c #7DB5DD\", -\"* c #83BBE2\", -\"= c #7EB6DE\", -\"- c #78B0D9\", -\"; c #7FB7DE\", -\"> c #88C2E7\", -\", c #85BEE4\", -\"' c #80B9E0\", -\") c #80B8DF\", -\"! c #8CC6EA\", -\"~ c #89C3E8\", -\"{ c #86BFE5\", -\"] c #81BAE1\", -\"^ c #7CB4DC\", -\"/ c #7FB8DF\", -\"( c #8DC7EB\", -\"_ c #7BB3DC\", -\": c #7EB7DE\", -\"< c #8BC4E9\", -\"[ c #8AC4E9\", -\"} c #8AC3E8\", -\"| c #87C0E6\", -\"1 c #87C0E5\", -\"2 c #83BCE2\", -\"3 c #75ACD6\", -\"4 c #7FB7DF\", -\"5 c #77AED8\", -\"6 c #71A8D2\", -\"7 c #70A7D1\", -\"8 c #76ADD7\", -\"9 c #6CA2CE\", -\"0 c #699FCC\", -\"a c #73AAD4\", -\"b c #6BA1CD\", -\"c c #669CC9\", -\"d c #6298C5\", -\"e c #689ECB\", -\"f c #6499C7\", -\"g c #6095C3\", -\"h c #5C91C0\", -\"i c #5E93C2\", -\"j c #5B90C0\", -\"k c #588CBC\", -\"l c #578CBC\", -\"m c #5589BA\", -\" \", -\" \", -\" ... . \", -\" .+. .. \", -\" .@. .#. \", -\" .$. .%@. \", -\" .&. .*=-. \", -\" .;. .>,'%. \", -\" .). .!~{]^. \", -\" ./. .(!~{]_. \", -\" .:. .!!<>,'%. \", -\" .&. .~[}>{*=-. \", -\" .$. .|1,2/%@. \", -\" .3. .*]4%56. \", -\" .7. .^$8#9. \", -\" .0. .a7bc. \", -\" .d. .efg. \", -\" .h. .ij. \", -\" .k. .l. \", -\" .m. .. \", -\" ... . \", -\" \", -\" \", -\" \"}; -" - 'xpm t)) - "Image for the previous feed button.") - -(defconst newsticker--next-feed-image - (and (fboundp 'image-type-available-p) - (image-type-available-p 'xpm) - (create-image "/* XPM */ -static char * next_feed_xpm[] = { -\"24 24 57 1\", -\" c None\", -\". c #000000\", -\"+ c #6CA2CE\", -\"@ c #75ADD6\", -\"# c #71A8D3\", -\"$ c #79B1DA\", -\"% c #7EB7DE\", -\"& c #7DB5DD\", -\"* c #81BAE1\", -\"= c #85BEE4\", -\"- c #78B0D9\", -\"; c #7FB7DE\", -\"> c #83BCE3\", -\", c #87C1E6\", -\"' c #8AC4E9\", -\") c #7BB3DB\", -\"! c #80B8DF\", -\"~ c #88C2E7\", -\"{ c #8BC5E9\", -\"] c #8DC7EB\", -\"^ c #7CB4DC\", -\"/ c #7FB8DF\", -\"( c #84BDE3\", -\"_ c #7BB3DC\", -\": c #83BCE2\", -\"< c #87C0E6\", -\"[ c #8AC4E8\", -\"} c #8BC5EA\", -\"| c #8CC6EA\", -\"1 c #88C1E6\", -\"2 c #89C3E8\", -\"3 c #8AC3E8\", -\"4 c #7EB6DE\", -\"5 c #82BBE1\", -\"6 c #86C0E5\", -\"7 c #87C0E5\", -\"8 c #75ACD6\", -\"9 c #7AB2DA\", -\"0 c #81B9E0\", -\"a c #82BBE2\", -\"b c #71A8D2\", -\"c c #70A7D1\", -\"d c #74ACD6\", -\"e c #699FCC\", -\"f c #6EA5D0\", -\"g c #72A9D4\", -\"h c #669CC9\", -\"i c #6298C5\", -\"j c #679DCA\", -\"k c #6BA1CD\", -\"l c #6095C3\", -\"m c #5C91C0\", -\"n c #5F94C2\", -\"o c #5B90C0\", -\"p c #588CBC\", -\"q c #578CBC\", -\"r c #5589BA\", -\" \", -\" \", -\" . ... \", -\" .. .+. \", -\" .@. .#. \", -\" .$%. .@. \", -\" .&*=. .-. \", -\" .;>,'. .). \", -\" .!=~{]. .^. \", -\" ./(~{]]. ._. \", -\" .%:<[}||. .). \", -\" .&*=12'3~. .-. \", -\" .$45=6<7. .@. \", -\" .8940a:. .b. \", -\" .cd-)&. .+. \", -\" .efg8. .h. \", -\" .ijk. .l. \", -\" .mn. .o. \", -\" .p. .q. \", -\" .. .r. \", -\" . ... \", -\" \", -\" \", -\" \"}; -" - 'xpm t)) - "Image for the next feed button.") - -(defconst newsticker--mark-read-image - (and (fboundp 'image-type-available-p) - (image-type-available-p 'xpm) - (create-image "/* XPM */ -static char * mark_read_xpm[] = { -\"24 24 44 1\", -\" c None\", -\". c #C20000\", -\"+ c #BE0000\", -\"@ c #C70000\", -\"# c #CE0000\", -\"$ c #C90000\", -\"% c #BD0000\", -\"& c #CB0000\", -\"* c #D10000\", -\"= c #D70000\", -\"- c #D30000\", -\"; c #CD0000\", -\"> c #C60000\", -\", c #D40000\", -\"' c #DA0000\", -\") c #DE0000\", -\"! c #DB0000\", -\"~ c #D60000\", -\"{ c #D00000\", -\"] c #DC0000\", -\"^ c #E00000\", -\"/ c #E40000\", -\"( c #E10000\", -\"_ c #DD0000\", -\": c #D80000\", -\"< c #E50000\", -\"[ c #E70000\", -\"} c #E60000\", -\"| c #E20000\", -\"1 c #E90000\", -\"2 c #E80000\", -\"3 c #E30000\", -\"4 c #DF0000\", -\"5 c #D90000\", -\"6 c #CC0000\", -\"7 c #C10000\", -\"8 c #C30000\", -\"9 c #BF0000\", -\"0 c #B90000\", -\"a c #BC0000\", -\"b c #BB0000\", -\"c c #B80000\", -\"d c #B50000\", -\"e c #B70000\", -\" \", -\" \", -\" \", -\" . + \", -\" +@# $.% \", -\" &*= -;> \", -\" ,') !~{ \", -\" ]^/ (_: \", -\" (<[ }|) \", -\" <[1 2<| \", -\" }222[< \", -\" }}}< \", -\" 333| \", -\" _4^4)] \", -\" ~:' 5=- \", -\" 6{- *#$ \", -\" 7>$ @89 \", -\" 0a+ %bc \", -\" ddc edd \", -\" ddd ddd \", -\" d d \", -\" \", -\" \", -\" \"}; -" - 'xpm t)) - "Image for the mark read button.") - -(defconst newsticker--mark-immortal-image - (and (fboundp 'image-type-available-p) - (image-type-available-p 'xpm) - (create-image "/* XPM */ -static char * mark_immortal_xpm[] = { -\"24 24 93 2\", -\" c None\", -\". c #171717\", -\"+ c #030303\", -\"@ c #000000\", -\"# c #181818\", -\"$ c #090909\", -\"% c #FFC960\", -\"& c #FFCB61\", -\"* c #FFCB62\", -\"= c #FFC961\", -\"- c #FFC75F\", -\"; c #FFC65E\", -\"> c #FFCA61\", -\", c #FFCD63\", -\"' c #FFCF65\", -\") c #FFD065\", -\"! c #FFCE64\", -\"~ c #FFC35C\", -\"{ c #FFC45D\", -\"] c #FFD166\", -\"^ c #FFD267\", -\"/ c #FFD368\", -\"( c #FFD167\", -\"_ c #FFC05A\", -\": c #010101\", -\"< c #040404\", -\"[ c #FFCC62\", -\"} c #FFD569\", -\"| c #FFD56A\", -\"1 c #FFC860\", -\"2 c #FFC25B\", -\"3 c #FFBB56\", -\"4 c #020202\", -\"5 c #060606\", -\"6 c #FFC15B\", -\"7 c #FFC85F\", -\"8 c #FFD469\", -\"9 c #FFD66A\", -\"0 c #FFBC57\", -\"a c #1B1B1B\", -\"b c #070707\", -\"c c #FFBA55\", -\"d c #FFB451\", -\"e c #FFB954\", -\"f c #FFB350\", -\"g c #FFB652\", -\"h c #FFBE58\", -\"i c #FFCD64\", -\"j c #FFD066\", -\"k c #FFC059\", -\"l c #FFB14E\", -\"m c #0B0B0B\", -\"n c #FFBB55\", -\"o c #FFC15A\", -\"p c #FFB552\", -\"q c #FFAD4B\", -\"r c #080808\", -\"s c #FFAF4C\", -\"t c #FFB853\", -\"u c #FFA948\", -\"v c #050505\", -\"w c #FFB04E\", -\"x c #FFB753\", -\"y c #FFBC56\", -\"z c #FFC55D\", -\"A c #FFC55E\", -\"B c #FFC45C\", -\"C c #FFBD57\", -\"D c #FFB854\", -\"E c #FFB34F\", -\"F c #FFAB4A\", -\"G c #FFA545\", -\"H c #FFAA49\", -\"I c #FFB04D\", -\"J c #FFB551\", -\"K c #FFBF58\", -\"L c #FFB24F\", -\"M c #FFAC4A\", -\"N c #FFA646\", -\"O c #FFA344\", -\"P c #FFA848\", -\"Q c #FFB14F\", -\"R c #FFAF4D\", -\"S c #FFA546\", -\"T c #FFA243\", -\"U c #FFA445\", -\"V c #FFAE4C\", -\"W c #FFA444\", -\"X c #FFA142\", -\"Y c #FF9F41\", -\"Z c #0A0A0A\", -\"` c #FF9E40\", -\" . c #FF9F40\", -\" \", -\" \", -\" \", -\" . + @ @ + # \", -\" $ @ % & * * = - + + \", -\" @ ; > , ' ) ' ! * - ~ @ \", -\" @ { > ! ] ^ / / ( ' * ; _ : \", -\" < _ ; [ ) / } | } / ] , 1 2 3 4 \", -\" 5 6 7 , ] 8 9 9 9 } ^ ! = ~ 0 a \", -\" b c 6 - , ] 8 9 9 9 } ^ ! % ~ 0 d 5 \", -\" : e _ ; * ) / 8 } } / ] , 1 2 3 f 5 \", -\" : g h { = i j ^ / ^ ] ! * ; k e l m \", -\" : f n o ; > , ' ) ' ! * - 2 0 p q r \", -\" : s g 0 6 ; % > * * = - ~ h t l u r \", -\" v u w x y k ~ z A z B o C D E F G b \", -\" 5 H I J e 0 h K h C c x L M N . \", -\" 4 O P q Q d g x g J L R H S T < \", -\" @ T U P F q V q M H N W X + \", -\" @ Y T O W G G W O X Y @ \", -\" 4 Z ` Y Y Y .` 4 4 \", -\" 5 : : @ @ Z \", -\" \", -\" \", -\" \"}; -" - 'xpm t)) - "Image for the mark immortal button.") - -(defconst newsticker--narrow-image - (and (fboundp 'image-type-available-p) - (image-type-available-p 'xpm) - (create-image "/* XPM */ -static char * narrow_xpm[] = { -\"24 24 48 1\", -\" c None\", -\". c #000000\", -\"+ c #969696\", -\"@ c #9E9E9E\", -\"# c #A4A4A4\", -\"$ c #AAAAAA\", -\"% c #AEAEAE\", -\"& c #B1B1B1\", -\"* c #B3B3B3\", -\"= c #B4B4B4\", -\"- c #B2B2B2\", -\"; c #AFAFAF\", -\"> c #ABABAB\", -\", c #A6A6A6\", -\"' c #A0A0A0\", -\") c #989898\", -\"! c #909090\", -\"~ c #73AAD4\", -\"{ c #7AB2DA\", -\"] c #7FB8DF\", -\"^ c #84BDE3\", -\"/ c #88C2E7\", -\"( c #8BC5E9\", -\"_ c #8DC7EB\", -\": c #8CC6EA\", -\"< c #89C3E8\", -\"[ c #86BFE5\", -\"} c #81BAE1\", -\"| c #7BB3DC\", -\"1 c #75ACD6\", -\"2 c #6DA4CF\", -\"3 c #979797\", -\"4 c #A3A3A3\", -\"5 c #A8A8A8\", -\"6 c #ADADAD\", -\"7 c #ACACAC\", -\"8 c #A9A9A9\", -\"9 c #A5A5A5\", -\"0 c #9A9A9A\", -\"a c #929292\", -\"b c #8C8C8C\", -\"c c #808080\", -\"d c #818181\", -\"e c #838383\", -\"f c #848484\", -\"g c #858585\", -\"h c #868686\", -\"i c #828282\", -\" \", -\" \", -\" \", -\" .................. \", -\" .+@#$%&*=*-;>,')!. \", -\" .................. \", -\" \", -\" \", -\" .................. \", -\" .~{]^/(___:<[}|12. \", -\" .................. \", -\" \", -\" \", -\" .................. \", -\" .!3@45>666789'0ab. \", -\" .................. \", -\" \", -\" \", -\" .................. \", -\" .cccdefghhgficccc. \", -\" .................. \", -\" \", -\" \", -\" \"}; -" - 'xpm t)) - "Image for the narrow image button.") - -(defconst newsticker--get-all-image - (and (fboundp 'image-type-available-p) - (image-type-available-p 'xpm) - (create-image "/* XPM */ -static char * get_all_xpm[] = { -\"24 24 70 1\", -\" c None\", -\". c #000000\", -\"+ c #F3DA00\", -\"@ c #F5DF00\", -\"# c #F7E300\", -\"$ c #F9E700\", -\"% c #FAEA00\", -\"& c #FBEC00\", -\"* c #FBED00\", -\"= c #FCEE00\", -\"- c #FAEB00\", -\"; c #F9E800\", -\"> c #F8E500\", -\", c #F6E000\", -\"' c #F4DB00\", -\") c #F1D500\", -\"! c #EFD000\", -\"~ c #B7CA00\", -\"{ c #BFD100\", -\"] c #C5D700\", -\"^ c #CBDB00\", -\"/ c #CFDF00\", -\"( c #D2E200\", -\"_ c #D4E400\", -\": c #D3E300\", -\"< c #D0E000\", -\"[ c #CCDD00\", -\"} c #C7D800\", -\"| c #C1D300\", -\"1 c #BACC00\", -\"2 c #B1C500\", -\"3 c #A8BC00\", -\"4 c #20A900\", -\"5 c #22AF00\", -\"6 c #24B500\", -\"7 c #26B900\", -\"8 c #27BC00\", -\"9 c #27BE00\", -\"0 c #28BF00\", -\"a c #27BD00\", -\"b c #26BA00\", -\"c c #25B600\", -\"d c #23B100\", -\"e c #21AB00\", -\"f c #1FA400\", -\"g c #1C9B00\", -\"h c #21AA00\", -\"i c #24B300\", -\"j c #25B800\", -\"k c #25B700\", -\"l c #24B400\", -\"m c #23B000\", -\"n c #1FA500\", -\"o c #1D9E00\", -\"p c #20A800\", -\"q c #21AC00\", -\"r c #23B200\", -\"s c #22AD00\", -\"t c #1D9F00\", -\"u c #20A700\", -\"v c #1EA100\", -\"w c #1C9C00\", -\"x c #1DA000\", -\"y c #1B9800\", -\"z c #1A9600\", -\"A c #1A9700\", -\"B c #1A9500\", -\"C c #199200\", -\"D c #189100\", -\"E c #178C00\", -\" \", -\" \", -\" \", -\" \", -\" ................... \", -\" .+@#$%&*=*&-;>,')!. \", -\" ................... \", -\" \", -\" ................... \", -\" .~{]^/(___:<[}|123. \", -\" ................... \", -\" \", -\" ................... \", -\" .45678909abcdefg. \", -\" .h5icj7jklmeno. \", -\" .pq5drrmshft. \", -\" .fu4h4pnvw. \", -\" .oxvxtwy. \", -\" .zAAzB. \", -\" .CCD. \", -\" .E. \", -\" . \", -\" \", -\" \"}; -" - 'xpm t)) - "Image for the get all image button.") - -(defconst newsticker--update-image - (and (fboundp 'image-type-available-p) - (image-type-available-p 'xpm) - (create-image "/* XPM */ -static char * update_xpm[] = { -\"24 24 37 1\", -\" c None\", -\". c #076D00\", -\"+ c #0A8600\", -\"@ c #0A8800\", -\"# c #098400\", -\"$ c #087200\", -\"% c #087900\", -\"& c #098500\", -\"* c #098100\", -\"= c #087600\", -\"- c #097E00\", -\"; c #097F00\", -\"> c #0A8700\", -\", c #0A8C00\", -\"' c #097C00\", -\") c #098300\", -\"! c #0A8900\", -\"~ c #0A8E00\", -\"{ c #0B9200\", -\"] c #087700\", -\"^ c #076E00\", -\"/ c #076C00\", -\"( c #076B00\", -\"_ c #076A00\", -\": c #076900\", -\"< c #076800\", -\"[ c #066700\", -\"} c #066500\", -\"| c #066400\", -\"1 c #066300\", -\"2 c #066600\", -\"3 c #066200\", -\"4 c #076700\", -\"5 c #065E00\", -\"6 c #066100\", -\"7 c #065F00\", -\"8 c #066000\", -\" \", -\" \", -\" \", -\" . +@@@+# \", -\" $% &@ +* \", -\" =-# ; \", -\" %*>, ' \", -\" ')!~{ = \", -\" ]$ \", -\" ^ ^ \", -\" . . \", -\" / ( \", -\" _ : \", -\" < [ \", -\" } | \", -\" [[ \", -\" 1 $.:23 \", -\" 3 4}35 \", -\" 6 655 \", -\" 76 85 55 \", -\" 5555555 5 \", -\" \", -\" \", -\" \"}; -" - 'xpm t)) - "Image for the update button.") - -(defconst newsticker--browse-image - (and (fboundp 'image-type-available-p) - (image-type-available-p 'xpm) - (create-image "/* XPM */ -static char * visit_xpm[] = { -\"24 24 39 1\", -\" c None\", -\". c #000000\", -\"+ c #FFFFFF\", -\"@ c #00E63D\", -\"# c #00E83E\", -\"$ c #00E73D\", -\"% c #00E93E\", -\"& c #00E63C\", -\"* c #00E53C\", -\"= c #00E23B\", -\"- c #00E33B\", -\"; c #00E83D\", -\"> c #00E13A\", -\", c #00DD38\", -\"' c #00DE38\", -\") c #00E23A\", -\"! c #00E43C\", -\"~ c #00DF39\", -\"{ c #00DB37\", -\"] c #00D634\", -\"^ c #00D734\", -\"/ c #00E039\", -\"( c #00DC37\", -\"_ c #00D835\", -\": c #00D332\", -\"< c #00CD2F\", -\"[ c #00DB36\", -\"} c #00D433\", -\"| c #00CF30\", -\"1 c #00DA36\", -\"2 c #00D936\", -\"3 c #00D533\", -\"4 c #00D131\", -\"5 c #00CE2F\", -\"6 c #00CC2F\", -\"7 c #00CA2D\", -\"8 c #00C62B\", -\"9 c #00C52A\", -\"0 c #00BE27\", -\" \", -\" \", -\" . \", -\" .+. \", -\" .+++. \", -\" .++.++. \", -\" .++.@.++. \", -\" .++.##$.++. \", -\" .++.%%%#&.++. \", -\" .++.$%%%#*=.++. \", -\" .++.-@;##$*>,.++. \", -\" .++.')!&@@*=~{].++. \", -\" .++.^{~>---)/(_:<.++. \", -\" .++.^[,~/~'(_}|.++. \", -\" .++.]_1[12^:|.++. \", -\" .++.:}33:45.++. \", -\" .++.<5567.++. \", -\" .++.889.++. \", -\" .++.0.++. \", -\" .++.++. \", -\" .+++. \", -\" .+. \", -\" . \", -\" \"}; -" - 'xpm t)) - "Image for the browse button.") (defun newsticker-browse-url-item (feed item) "Convert FEED ITEM to html and call `browse-url' on result." === modified file 'lisp/net/newst-treeview.el' --- lisp/net/newst-treeview.el 2011-01-25 04:08:28 +0000 +++ lisp/net/newst-treeview.el 2011-05-13 19:06:36 +0000 @@ -7,7 +7,7 @@ ;; URL: http://www.nongnu.org/newsticker ;; Created: 2007 ;; Keywords: News, RSS, Atom -;; Time-stamp: "6. Dezember 2009, 19:17:28 (ulf)" +;; Time-stamp: "13. Mai 2011, 20:56:49 (ulf)" ;; Package: newsticker ;; ====================================================================== @@ -36,7 +36,6 @@ ;;; History: ;; - ;; ====================================================================== ;;; Code: (require 'newst-reader) @@ -53,9 +52,9 @@ (defface newsticker-treeview-face '((((class color) (background dark)) - (:family "helvetica" :foreground "misty rose" :bold nil)) + (:family "sans" :foreground "white" :bold nil)) (((class color) (background light)) - (:family "helvetica" :foreground "black" :bold nil))) + (:family "sans" :foreground "black" :bold nil))) "Face for newsticker tree." :group 'newsticker-treeview) @@ -1069,86 +1068,63 @@ ;; ====================================================================== ;;; Toolbar ;; ====================================================================== -;;(makunbound 'newsticker-treeview-tool-bar-map) (defvar newsticker-treeview-tool-bar-map (if (featurep 'xemacs) nil (if (boundp 'tool-bar-map) (let ((tool-bar-map (make-sparse-keymap))) + (tool-bar-add-item "newsticker/prev-feed" + 'newsticker-treeview-prev-feed + 'newsticker-treeview-prev-feed + :help "Go to previous feed" + ;;:enable '(newsticker-previous-feed-available-p) FIXME + ) + (tool-bar-add-item "newsticker/prev-item" + 'newsticker-treeview-prev-item + 'newsticker-treeview-prev-item + :help "Go to previous item" + ;;:enable '(newsticker-previous-item-available-p) FIXME + ) + (tool-bar-add-item "newsticker/next-item" + 'newsticker-treeview-next-item + 'newsticker-treeview-next-item + :visible t + :help "Go to next item" + ;;:enable '(newsticker-next-item-available-p) FIXME + ) + (tool-bar-add-item "newsticker/next-feed" + 'newsticker-treeview-next-feed + 'newsticker-treeview-next-feed + :help "Go to next feed" + ;;:enable '(newsticker-next-feed-available-p) FIXME + ) + (tool-bar-add-item "newsticker/mark-immortal" + 'newsticker-treeview-toggle-item-immortal + 'newsticker-treeview-toggle-item-immortal + :help "Toggle current item as immortal" + ;;:enable '(newsticker-item-not-immortal-p) FIXME + ) + (tool-bar-add-item "newsticker/mark-read" + 'newsticker-treeview-mark-item-old + 'newsticker-treeview-mark-item-old + :help "Mark current item as read" + ;;:enable '(newsticker-item-not-old-p) FIXME + ) + (tool-bar-add-item "newsticker/get-all" + 'newsticker-get-all-news + 'newsticker-get-all-news + :help "Get news for all feeds") + (tool-bar-add-item "newsticker/update" + 'newsticker-treeview-update + 'newsticker-treeview-update + :help "Update newsticker buffer") + (tool-bar-add-item "newsticker/browse-url" + 'newsticker-browse-url + 'newsticker-browse-url + :help "Browse URL for item at point") + ;; standard icons / actions (define-key tool-bar-map [newsticker-sep-1] (list 'menu-item "--double-line")) - (define-key tool-bar-map [newsticker-browse-url] - (list 'menu-item "newsticker-browse-url" - 'newsticker-browse-url - :visible t - :help "Browse URL for item at point" - :image newsticker--browse-image)) - (define-key tool-bar-map [newsticker-buffer-force-update] - (list 'menu-item "newsticker-treeview-update" - 'newsticker-treeview-update - :visible t - :help "Update newsticker buffer" - :image newsticker--update-image - :enable t)) - (define-key tool-bar-map [newsticker-get-all-news] - (list 'menu-item "newsticker-get-all-news" 'newsticker-get-all-news - :visible t - :help "Get news for all feeds" - :image newsticker--get-all-image)) - (define-key tool-bar-map [newsticker-mark-item-at-point-as-read] - (list 'menu-item "newsticker-treeview-mark-item-old" - 'newsticker-treeview-mark-item-old - :visible t - :image newsticker--mark-read-image - :help "Mark current item as read" - ;;:enable '(newsticker-item-not-old-p) FIXME - )) - (define-key tool-bar-map [newsticker-mark-item-at-point-as-immortal] - (list 'menu-item "newsticker-treeview-toggle-item-immortal" - 'newsticker-treeview-toggle-item-immortal - :visible t - :image newsticker--mark-immortal-image - :help "Toggle current item as immortal" - :enable t - ;;'(newsticker-item-not-immortal-p) FIXME - )) - (define-key tool-bar-map [newsticker-next-feed] - (list 'menu-item "newsticker-treeview-next-feed" - 'newsticker-treeview-next-feed - :visible t - :help "Go to next feed" - :image newsticker--next-feed-image - :enable t - ;;'(newsticker-next-feed-available-p) FIXME - )) - (define-key tool-bar-map [newsticker-treeview-next-item] - (list 'menu-item "newsticker-treeview-next-item" - 'newsticker-treeview-next-item - :visible t - :help "Go to next item" - :image newsticker--next-item-image - :enable t - ;;'(newsticker-next-item-available-p) FIXME - )) - (define-key tool-bar-map [newsticker-treeview-prev-item] - (list 'menu-item "newsticker-treeview-prev-item" - 'newsticker-treeview-prev-item - :visible t - :help "Go to previous item" - :image newsticker--previous-item-image - :enable t - ;;'(newsticker-previous-item-available-p) FIXME - )) - (define-key tool-bar-map [newsticker-treeview-prev-feed] - (list 'menu-item "newsticker-treeview-prev-feed" - 'newsticker-treeview-prev-feed - :visible t - :help "Go to previous feed" - :image newsticker--previous-feed-image - :enable t - ;;'(newsticker-previous-feed-available-p) FIXME - )) - ;; standard icons / actions (tool-bar-add-item "close" 'newsticker-treeview-quit 'newsticker-treeview-quit ------------------------------------------------------------ revno: 104220 author: Didier Verna committer: Stefan Monnier branch nick: trunk timestamp: Fri 2011-05-13 16:27:52 -0300 message: Common Lisp indentation improvements on defmethod and lambda-lists. * cl-indent.el: Advertise the changes and remove obsolete TODO entries. (lisp-lambda-list-keyword-parameter-indentation) (lisp-lambda-list-keyword-parameter-alignment) (lisp-lambda-list-keyword-alignment): New customizable user options. (lisp-indent-defun-method): Improve docstring. (extended-loop-p): Fix comment. (lisp-indent-lambda-list-keywords-regexp): New variable. (lisp-indent-lambda-list): New function. (lisp-indent-259): Use it. (lisp-indent-defmethod): Support for more than one method qualifier and properly indent methods lambda-lists. (defgeneric): Provide a missing common-lisp-indent-function property. diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2011-05-13 17:02:56 +0000 +++ lisp/ChangeLog 2011-05-13 19:27:52 +0000 @@ -1,3 +1,19 @@ +2011-05-13 Didier Verna + + Common Lisp indentation improvements on defmethod and lambda-lists. + * cl-indent.el: Advertise the changes and remove obsolete TODO entries. + (lisp-lambda-list-keyword-parameter-indentation) + (lisp-lambda-list-keyword-parameter-alignment) + (lisp-lambda-list-keyword-alignment): New customizable user options. + (lisp-indent-defun-method): Improve docstring. + (extended-loop-p): Fix comment. + (lisp-indent-lambda-list-keywords-regexp): New variable. + (lisp-indent-lambda-list): New function. + (lisp-indent-259): Use it. + (lisp-indent-defmethod): Support for more than one + method qualifier and properly indent methods lambda-lists. + (defgeneric): Provide a missing common-lisp-indent-function property. + 2011-05-13 Stefan Monnier * thingatpt.el (bounds-of-thing-at-point): Return nil rather than === modified file 'lisp/emacs-lisp/cl-indent.el' --- lisp/emacs-lisp/cl-indent.el 2011-01-25 04:08:28 +0000 +++ lisp/emacs-lisp/cl-indent.el 2011-05-13 19:27:52 +0000 @@ -31,22 +31,10 @@ ;; ;; (setq lisp-indent-function 'common-lisp-indent-function) -;;>> TODO -;; :foo -;; bar -;; :baz -;; zap -;; &key (like &body)?? - -;; &rest 1 in lambda-lists doesn't work -;; -- really want (foo bar -;; baz) -;; not (foo bar -;; baz) -;; Need something better than &rest for such cases - ;;; Code: +(eval-when-compile (require 'cl)) + (defgroup lisp-indent nil "Indentation in Lisp." :group 'lisp) @@ -101,9 +89,55 @@ :type 'integer :group 'lisp-indent) +(defcustom lisp-lambda-list-keyword-alignment nil + "Whether to vertically align lambda-list keywords together. +If nil (the default), keyworded lambda-list parts are aligned +with the initial mandatory arguments, like this: + +\(defun foo (arg1 arg2 &rest rest + &key key1 key2) + #|...|#) + +If non-nil, alignment is done with the first keyword +\(or falls back to the previous case), as in: + +\(defun foo (arg1 arg2 &rest rest + &key key1 key2) + #|...|#)" + :type 'boolean + :group 'lisp-indent) + +(defcustom lisp-lambda-list-keyword-parameter-indentation 2 + "Indentation of lambda list keyword parameters. +See `lisp-lambda-list-keyword-parameter-alignment' +for more information." + :type 'integer + :group 'lisp-indent) + +(defcustom lisp-lambda-list-keyword-parameter-alignment nil + "Whether to vertically align lambda-list keyword parameters together. +If nil (the default), the parameters are aligned +with their corresponding keyword, plus the value of +`lisp-lambda-list-keyword-parameter-indentation', like this: + +\(defun foo (arg1 arg2 &key key1 key2 + key3 key4) + #|...|#) + +If non-nil, alignment is done with the first parameter +\(or falls back to the previous case), as in: + +\(defun foo (arg1 arg2 &key key1 key2 + key3 key4) + #|...|#)" + :type 'boolean + :group 'lisp-indent) + (defvar lisp-indent-defun-method '(4 &lambda &body) - "Indentation for function with `common-lisp-indent-function' property `defun'.") + "Defun-like indentation method. +This applies when the value of the `common-lisp-indent-function' property +is set to `defun'.") (defun extended-loop-p (loop-start) @@ -144,7 +178,7 @@ of this function. If the indentation point is in a call to a Lisp function, that -function's common-lisp-indent-function property specifies how +function's `common-lisp-indent-function' property specifies how this function should indent it. Possible values for this property are: @@ -217,8 +251,7 @@ (let ((depth 0) ;; Path describes the position of point in terms of ;; list-structure with respect to containing lists. - ;; `foo' has a path of (0 4 1) in `((a b c (d foo) f) g)' - ;; (Surely (0 3 1)?). + ;; `foo' has a path of (0 3 1) in `((a b c (d foo) f) g)'. (path ()) ;; set non-nil when somebody works out the indentation to use calculated @@ -381,10 +414,74 @@ ;; Love those free variable references!! lisp-indent-error-function 'common-lisp-indent-function m)) + +;; Lambda-list indentation is now done in LISP-INDENT-LAMBDA-LIST. +;; See also `lisp-lambda-list-keyword-alignment', +;; `lisp-lambda-list-keyword-parameter-alignment' and +;; `lisp-lambda-list-keyword-parameter-indentation' -- dvl + +(defvar lisp-indent-lambda-list-keywords-regexp + "&\\(\ +optional\\|rest\\|key\\|allow-other-keys\\|aux\\|whole\\|body\\|environment\ +\\)\\([ \t]\\|$\\)" + "Regular expression matching lambda-list keywords.") + +(defun lisp-indent-lambda-list + (indent-point sexp-column containing-form-start) + (let (limit) + (cond ((save-excursion + (goto-char indent-point) + (beginning-of-line) + (skip-chars-forward " \t") + (setq limit (point)) + (looking-at lisp-indent-lambda-list-keywords-regexp)) + ;; We're facing a lambda-list keyword. + (if lisp-lambda-list-keyword-alignment + ;; Align to the first keyword if any, or to the beginning of + ;; the lambda-list. + (save-excursion + (goto-char containing-form-start) + (save-match-data + (if (re-search-forward + lisp-indent-lambda-list-keywords-regexp + limit t) + (progn + (goto-char (match-beginning 0)) + (current-column)) + (1+ sexp-column)))) + ;; Align to the beginning of the lambda-list. + (1+ sexp-column))) + (t + ;; Otherwise, align to the first argument of the last lambda-list + ;; keyword, the keyword itself, or the beginning of the + ;; lambda-list. + (save-excursion + (goto-char indent-point) + (forward-line -1) + (end-of-line) + (save-match-data + (if (re-search-backward lisp-indent-lambda-list-keywords-regexp + containing-form-start t) + (let* ((keyword-posn + (progn + (goto-char (match-beginning 0)) + (current-column))) + (indented-keyword-posn + (+ keyword-posn + lisp-lambda-list-keyword-parameter-indentation))) + (goto-char (match-end 0)) + (skip-chars-forward " \t") + (if (eolp) + indented-keyword-posn + (if lisp-lambda-list-keyword-parameter-alignment + (current-column) + indented-keyword-posn))) + (1+ sexp-column)))))))) + ;; Blame the crufty control structure on dynamic scoping ;; -- not on me! -(defun lisp-indent-259 (method path state indent-point - sexp-column normal-indent) +(defun lisp-indent-259 + (method path state indent-point sexp-column normal-indent) (catch 'exit (let ((p path) (containing-form-start (elt state 1)) @@ -452,8 +549,14 @@ (cond ((null p) (list (+ sexp-column 4) containing-form-start)) ((null (cdr p)) - (+ sexp-column 1)) - (t normal-indent)))) + ;; Indentation within a lambda-list. -- dvl + (list (lisp-indent-lambda-list + indent-point + sexp-column + containing-form-start) + containing-form-start)) + (t + normal-indent)))) ((integerp tem) (throw 'exit (if (null p) ;not in subforms @@ -523,19 +626,26 @@ path state indent-point sexp-column normal-indent))) -(defun lisp-indent-defmethod (path state indent-point sexp-column - normal-indent) - "Indentation function defmethod." - (lisp-indent-259 (if (and (>= (car path) 3) - (null (cdr path)) - (save-excursion (goto-char (elt state 1)) - (forward-char 1) - (forward-sexp 3) - (backward-sexp) - (looking-at ":\\|\\sw+"))) - '(4 4 (&whole 4 &rest 4) &body) - (get 'defun 'common-lisp-indent-function)) - path state indent-point sexp-column normal-indent)) +;; LISP-INDENT-DEFMETHOD now supports the presence of more than one method +;; qualifier and indents the method's lambda list properly. -- dvl +(defun lisp-indent-defmethod + (path state indent-point sexp-column normal-indent) + (lisp-indent-259 + (let ((nqual 0)) + (if (and (>= (car path) 3) + (save-excursion + (beginning-of-defun) + (forward-char 1) + (forward-sexp 2) + (skip-chars-forward " \t\n") + (while (looking-at "\\sw\\|\\s_") + (incf nqual) + (forward-sexp) + (skip-chars-forward " \t\n")) + (> nqual 0))) + (append '(4) (make-list nqual 4) '(&lambda &body)) + (get 'defun 'common-lisp-indent-function))) + path state indent-point sexp-column normal-indent)) (defun lisp-indent-function-lambda-hack (path state indent-point @@ -577,6 +687,7 @@ (define-modify-macro (4 &lambda &body)) (defsetf (4 &lambda 4 &body)) (defun (4 &lambda &body)) + (defgeneric (4 &lambda &body)) (define-setf-method . defun) (define-setf-expander . defun) (defmacro . defun) ------------------------------------------------------------ revno: 104219 fixes bug(s): http://debbugs.gnu.org/cgi/bugreport.cgi?bug=8667 committer: Stefan Monnier branch nick: trunk timestamp: Fri 2011-05-13 14:02:56 -0300 message: * lisp/thingatpt.el (bounds-of-thing-at-point): Return nil rather than bounds for the empty string. diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2011-05-13 02:06:35 +0000 +++ lisp/ChangeLog 2011-05-13 17:02:56 +0000 @@ -1,9 +1,14 @@ +2011-05-13 Stefan Monnier + + * thingatpt.el (bounds-of-thing-at-point): Return nil rather than + bounds for the empty string (bug#8667). + 2011-05-13 Glenn Morris * mail/feedmail.el (feedmail-buffer-to-sendmail): Require sendmail. * mail/sendmail.el (sendmail-program): Try executable-find first. - (sendmail-send-it): sendmail-program cannot be unbound. + (sendmail-send-it): `sendmail-program' cannot be unbound. * calendar/appt.el (appt-make-list): Simplify. (appt-time-msg-list): Doc fix. === modified file 'lisp/thingatpt.el' --- lisp/thingatpt.el 2011-03-24 16:38:12 +0000 +++ lisp/thingatpt.el 2011-05-13 17:02:56 +0000 @@ -89,18 +89,19 @@ (or (get thing 'beginning-op) (lambda () (forward-thing thing -1)))) (let ((beg (point))) - (if (not (and beg (> beg orig))) + (if (<= beg orig) ;; If that brings us all the way back to ORIG, ;; it worked. But END may not be the real end. ;; So find the real end that corresponds to BEG. + ;; FIXME: in which cases can `real-end' differ from `end'? (let ((real-end (progn (funcall (or (get thing 'end-op) (lambda () (forward-thing thing 1)))) (point)))) - (if (and beg real-end (<= beg orig) (<= orig real-end)) - (cons beg real-end))) + (when (and (<= orig real-end) (< beg real-end)) + (cons beg real-end))) (goto-char orig) ;; Try a second time, moving backward first and then forward, ;; so that we can find a thing that ends at ORIG. @@ -117,7 +118,7 @@ (or (get thing 'beginning-op) (lambda () (forward-thing thing -1)))) (point)))) - (if (and real-beg end (<= real-beg orig) (<= orig end)) + (if (and (<= real-beg orig) (<= orig end) (< real-beg end)) (cons real-beg end)))))) (error nil))))) ------------------------------------------------------------ revno: 104218 committer: Katsumi Yamaoka branch nick: trunk timestamp: Fri 2011-05-13 07:53:12 +0000 message: gnus-html.el (gnus-html-put-image): Fix last change. diff: === modified file 'lisp/gnus/gnus-html.el' --- lisp/gnus/gnus-html.el 2011-05-13 05:35:56 +0000 +++ lisp/gnus/gnus-html.el 2011-05-13 07:53:12 +0000 @@ -488,7 +488,7 @@ ,url image-displayer (lambda (url start end) - (gnus-html-display-image ,url ,start ,(point) + (gnus-html-display-image url start end ,alt-text))))) (gnus-add-image 'external image) t) ------------------------------------------------------------ revno: 104217 committer: Katsumi Yamaoka branch nick: trunk timestamp: Fri 2011-05-13 05:35:56 +0000 message: gnus-html.el (gnus-html-put-image): Register a displayer. shr.el (shr-image-displayer): Don't remove text props from alt text. diff: === modified file 'lisp/gnus/ChangeLog' --- lisp/gnus/ChangeLog 2011-05-13 04:12:37 +0000 +++ lisp/gnus/ChangeLog 2011-05-13 05:35:56 +0000 @@ -1,3 +1,9 @@ +2011-05-13 Katsumi Yamaoka + + * gnus-html.el (gnus-html-put-image): Register a displayer. + + * shr.el (shr-image-displayer): Don't remove text props from alt text. + 2011-05-13 Teodor Zlatanov * registry.el (prune-factor): New initialization parameter defaulting === modified file 'lisp/gnus/gnus-html.el' --- lisp/gnus/gnus-html.el 2011-05-10 03:14:44 +0000 +++ lisp/gnus/gnus-html.el 2011-05-13 05:35:56 +0000 @@ -482,8 +482,14 @@ (gnus-put-text-property start (point) 'gnus-alt-text alt-text) (when url - (gnus-put-text-property start (point) - 'image-url url)) + (gnus-add-text-properties + start (point) + `(image-url + ,url + image-displayer + (lambda (url start end) + (gnus-html-display-image ,url ,start ,(point) + ,alt-text))))) (gnus-add-image 'external image) t) ;; Bad image, try to show something else === modified file 'lisp/gnus/shr.el' --- lisp/gnus/shr.el 2011-05-10 13:57:12 +0000 +++ lisp/gnus/shr.el 2011-05-13 05:35:56 +0000 @@ -582,7 +582,7 @@ (when image (goto-char start) (funcall shr-put-image-function - image (buffer-substring-no-properties start end)) + image (buffer-substring start end)) (delete-region (point) end)))) (url-retrieve url 'shr-image-fetched (list (current-buffer) start end) ------------------------------------------------------------ Use --include-merges or -n0 to see merged revisions.