12 o Fix command line editing
13 - Make editing long text possible
14 - Support double-width characters
15 o Don't assume filenames are UTF-8
22 o :run command (run external command for selected files)
23 o Support double-width characters
24 o Fix UTF-8 validation
25 o Fix case insensitive UTF-8 string comparison
32 o Fix crash in player_pause() when ip is not set
33 This bug was reported by Martin Stubenschrott
35 o Documentation update
41 o Fix returning error codes in alsa op
42 o Display plugin directories in cmus --plugins
43 o Case insensitive artist/album adding
44 o Show 'lost connection' error msg on EOF if ip is remote
45 o Show error messages at least 3 seconds
46 o Make :set to expand variable values
47 o Remove unnecessary BUG_ON when printing negative FO_INT values
48 o Build system changes
49 o Documentation update
55 o Parse only FileN= lines from .pls files
56 o Better UTF-8 validation
57 o Link against libncursesw, not libncurses
58 o Add more MIME types for mad input plugin
64 o add support for 256 colors
65 o add color_* options (see manual)
67 o make backspace go to previous help page
68 o documentation update
74 o mad.charset option (see section "ID3 Tags" in cmus.html)
77 o support default terminal colors (see manual)
78 this makes transparency possible
79 o documentation update
85 o update play queue view when tracks are enqueued using cmus-remote
93 o --volume option for cmus-remote
96 o replaced libid3tag code with my own ID3 code
97 should fix problems with some mp3s with UTF-8 tags
99 Summary of changes from 1.5.0 to 1.5.1
100 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
103 o don't spawn zombie processes. Bug reported by Eugene Vlasov.
104 o fix mem leak in do_http_get
105 o reorder *_exit() calls (fixes segfault at exit)
106 o added .spec file (might not work, patches welcome)
108 Summary of changes from 1.4.6 to 1.5.0
109 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
112 o dynamically loadable plugins
113 o add --plugins cmd line option
114 o improved search/command history
115 o build system changes
117 Summary of changes from 1.4.5 to 1.4.6
118 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
121 o always sort ".." first in browser
122 o remember position in browser when cd'ing to ".."
123 o tab expand only directories for :cd command
124 o don't allow adding duplicate files to playlist
125 o better check_mad (configure script). now works even without .pc files
126 o more detailed installation instructions
127 o miscellaneous clean ups
129 Summary of changes from 1.4.4 to 1.4.5
130 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
133 o Add separator between artist/album and track windows
134 o Fix color handling bug (custom row_bg and row_fg now actually work)
136 o Describe views (doc)
138 Summary of changes from 1.4.3 to 1.4.4
139 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
142 o fix bug in format_print() when %= not in format
144 Summary of changes from 1.4.2 to 1.4.3
145 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
148 o made playlists browsable in directory browser
149 o 'u' now updates reloads directory in browser
150 o convert PCM to 16-bit signed little-endian stereo
154 Summary of changes from 1.4.1 to 1.4.2
155 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
158 o use HTTP/1.0 instead of 1.1
159 o make .pls parser more forgiving
160 o split remote code to separate program cmus-remote
161 o move common code to common/
162 o add --listen option to cmus
163 o add --server option to cmus-remote
164 o improved search: //WORDS compares to titles only
166 o better configure check for pthread
167 o configure checks for iconv and ncurses
170 Summary of changes from 1.4.0 to 1.4.1
171 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
174 o fixed long option parsing bug (--play now works)
175 o added support for .m3u and .pls playlist formats (loading only)
176 o much improved streaming
177 o better error reporting (http errors)
178 o streams are now put under <Stream> 'artist' instead of <no name> in
179 the artist/album view
180 o clear current track at eof when there's no next track available
181 o skip ID3 tags when decoding mp3
182 o optimize adding a track to the sorted view
184 Summary of changes from 1.3.2 to 1.4.0
185 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
188 o made view 3 sortable
189 o added 'sort' option
190 o added prepend to play queue command ('E')
191 o display info message if searched text was not found
192 o fixed bug in ip_mad. get genre name instead of genre index.
193 ~/.cache/cmus/trackdb.* may contain invalid genres, remove these
194 files if genre numbers are shown instead of genre names
195 o added 'g' (genre) to format chars
196 o renamed playlist modes: sorted -> tree, playlist -> sorted
197 o changed format_print to cut text if it is longer than specified field width
198 o made play queue thread safe
199 o changed debugging code (less bloated now)
202 o documentation update
204 Summary of changes from 1.3.1 to 1.3.2
205 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
209 o document :enqueue command
212 Summary of changes from 1.3.0 to 1.3.1
213 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
216 o new input plugin (libmodplug). adds support for following files:
217 mod, s3m, xm, it, 669, amf, ams, dbm, dmf, dsm, far, mdl, med, mtm,
218 okt, ptm, stm, ult, umx, mt2, psm, mdz, s3z, xmz, itz, mdr, s3r, xmr,
219 itr, mdgz, s3gz, xmgz, itgz
221 Summary of changes from 1.2.5 to 1.3.0
222 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
225 o add ':enqueue' command
226 o add '--enqueue' command line option
227 o enqueue now works for directories and playlists too
228 o enqueue now works in the artist/album window
229 o replace playlist loader with a more general purpose worker thread
230 o playlist update ('u' key) now happens in the worker thread
231 o files can be deleted in the directory browser ('D' or del)
232 o searching now works in every view
233 o multiple search patterns recognized (separated by spaces)
234 o colorize error messages
236 o updated AUTHORS (should have done that much earlier)
238 Summary of changes from 1.2.4 to 1.2.5
239 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
243 o update window title only if terminal supports dynamic window titles
245 Summary of changes from 1.2.3 to 1.2.4
246 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
249 o hide non-playable files in the directory browser
250 o don't read uninitialized memory (bsplit.c)
251 o make directory name absolute before changing to that directory
252 in the directory browser
253 o customizable colors for files and directories in the directory browser
254 o --seek command line option
255 o documentation is now generated from restructured text
256 o updated cmus-status-display script
257 o build system changes
259 Summary of changes from 1.2.2 to 1.2.3
260 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
263 o remove obsolete .mpl code. loading mpl-playlists still works
264 o allow playing selected file in the directory browser
265 o enqueue now works in the directory browser too
266 o redirect output of status display script to /dev/null
268 Summary of changes from 1.2.1 to 1.2.2
269 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
272 o don't use GNU extensions
273 o fix compiling against alsa-lib-1.0.9rc2
276 Summary of changes from 1.2.0 to 1.2.1
277 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
280 o load output plugin options before initializing the plugins
281 o oss: only set options to default if not set by user
282 o load output plugin options before initializing plugins
283 o new config dirs: ~/.config/cmus/ and ~/.cache/cmus/
286 Summary of changes from 1.1.4 to 1.2.0
287 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
290 o play queue (use 'e' to enqueue track)
291 o more pages in the help window
292 o use 'D' instead of 'd' for delete commands. this prevents accidental removes
293 o key '4' now shows the play queue
294 o key '5' now shows the directory browser
295 o try to initialize output plugin again when selecting it for use if
296 previously failed to initialize
297 o lots of code changes
298 o documentation update
300 Summary of changes from 1.1.3 to 1.1.4
301 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
304 o fix 'j' and 'k' keys in directory browser
305 o big build system update
307 Summary of changes from 1.1.2 to 1.1.3
308 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
311 o help window by Sergey Kuleshov
312 o fixed crash in command mode when backspace is pressed on multibyte
314 o changed key mappings (more vim like)
315 o add ARTS_CFLAGS and ARTS_LIBS to Makefile. this _should_ make arts
316 plugin to compile again. this bug was reported by Martin Stubenschrott
317 o documentation update
318 o build system update
320 Summary of changes from 1.1.1 to 1.1.2
321 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
324 o don't BUG if real-time scheduling policy is not available
325 should work this time :)
327 Summary of changes from 1.1.0 to 1.1.1
328 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
331 o added buffer_seconds option (buffer size in seconds)
332 o fixed compilation with older (non C99) compilers (hopefully)
333 o don't BUG if real-time scheduling policy is not available.
334 this bug was reported by Sergey Kuleshov
336 o documentation update
338 Summary of changes from 1.0.1 to 1.1.0
339 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
342 o added status_display_program option
343 o sample status display script
344 o made struct nomad and struct irman private
345 o more robust player status updating
347 o documentation update
349 Summary of changes from 1.0.0 to 1.0.1
350 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
356 Summary of changes from 0.9.3 to 1.0.0
357 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
360 o track metadata database
362 o don't crash when nothing to play (player_play)
363 o don't assume simple playlists (*.pl) contain only files
364 crashed when there was url
366 o documentation update
368 Summary of changes from 0.9.2 to 0.9.3
369 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
372 o fix crash in tabexp_file.c
375 Summary of changes from 0.9.1 to 0.9.2
376 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
379 o track window: sort by filename if track number not set
380 o increase history sizes to 100 lines
382 Summary of changes from 0.9.0 to 0.9.1
383 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
386 o don't prebuffer (and crash) when changing state paused->playing
387 o added support for disc number tag (vorbis: DISCNUMBER, id3: TPOS)
388 o added '%D' (disc number) format option
389 o sort tracks by disc, track, title
390 o added "play artist" mode
391 o documentation update
393 Summary of changes from 0.8.2 to 0.9.0
394 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
397 o changed from separate artist/album windows to artist/album treeview
398 o better error handling in input plugins
400 o documentation update
402 Summary of changes from 0.8.1 to 0.8.2
403 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
406 o delete old ip on file change
408 o fill sound card buffer more aggressively
409 o change some key mappings
410 o 5s timeout (streaming)
411 o documentation update
413 Summary of changes from 0.8.0 to 0.8.1
414 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
417 o added "play album" mode
418 o disable seeking when streaming
419 o only compile OSS plugin if available (changed from "yes" to "auto")
422 o documentation update
424 Summary of changes from 0.7.0 to 0.8.0
425 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
428 o ID3v2 support (libid3tag)
430 o separate threads for player input / output
431 o remove quit remote command
432 o create /tmp/cmus-debug only if needed
434 Summary of changes from 0.6.8 to 0.7.0
435 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
438 o ":load" now clears playlist before loading new one
439 o ":load" now updates playlist filename
440 o ":add" can be used to join playlists
441 o directory browser window
442 o display more error messages
443 o hide error message after key press
444 o show playlist filename in shuffle and playlist windows
445 o fix memory leak in pl_add_dir
447 o documentation updates
449 Summary of changes from 0.6.7 to 0.6.8
450 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
455 Summary of changes from 0.6.6 to 0.6.7
456 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
460 o make filenames absolute before adding to the playlist
461 o format_print.c: allow field width for %d
462 o pl.c: search: compare with filename if track has no tag
464 o small bug fixes and clean ups