diff -urN soundtracker-0.3.9/AUTHORS soundtracker-0.3.10/AUTHORS --- soundtracker-0.3.9/AUTHORS Sun Dec 26 13:20:11 1999 +++ soundtracker-0.3.10/AUTHORS Fri Jan 21 16:39:50 2000 @@ -53,6 +53,8 @@ (the SoundTracker logo) Conrad Parker ("Reverse" function in sample editor; bug fixes) +Tomasz Maka + ("Save region" function, insert / delete row stuff) Translations ============= diff -urN soundtracker-0.3.9/ChangeLog soundtracker-0.3.10/ChangeLog --- soundtracker-0.3.9/ChangeLog Wed Jan 12 20:39:25 2000 +++ soundtracker-0.3.10/ChangeLog Wed Jan 26 18:29:31 2000 @@ -1,3 +1,64 @@ +2000-01-26 Michael Krause + + * Released v0.3.10 + +2000-01-22 Michael Krause + + * app/gui.c: "Escape" can be used to toggle editing on even if + we're in playing mode (patch by Conrad Parker). + + * app/clavier.c, app/playlist.c: Also replace custom marshallers + by gtk-provided ones. + + * app/sample-display.c: Replace my_2ints_marshal() by + gtk_marshal_NONE__INT_INT (patch by Conrad Parker). + +2000-01-21 Michael Krause + + * app/sample-editor.c (sample_editor_page_create): Rename "Clear" + to "Clear Sample". + + * app/track-editor.c: "Insert" and "Backspace" key bindings (shift + down / pull up track). (patch by Tomasz Maka) + (track_editor_find_next_jazz_channel): Jazz edit logic extracted + into a new function. Made more intelligent (takes care of channels + that are still busy playing a sample). + + * app/sample-editor.c: Added "Save Region" button, which saves + only the selected region as a WAV. (Tomasz Maka) + +2000-01-19 Michael Krause + + * app/xm.c (XM_Load): setting restart position to song_length - 1 + if out of range (FT2 does this). + +2000-01-18 Michael Krause + + * app/track-editor.c (track_editor_set_num_channels): For the jazz + edit mode, only display those buttons for channels that are + actually available. + + * app/xm.c (XM_Load): Checking if restart_position is < + song_length (setting rp to 0 otherwise). Encountered a funny XM + from my favourite label "Rohformat" that has a bug here and + subsequently crashed the tracker due to a failed assertion in the + playlist widget. Which shows us that assertions are your + friend. Shame on you, Ronny :-) + + * app/menubar.c: Even more menu bar translation hacking code. This + really sucks. Thanks to Yuuki Ninomiya for discussing this with + me. + + * po: Updated ja.po. + +2000-01-15 Michael Krause + + * app/menubar.c (menubar_create): all_translated calculated + correctly now (patch by Yuuki NINOMIYA). + + * app/sample-editor.c (sample_editor_copy_cut_common): Adjust loop + data after cutting parts of the sample (patch by Conrad Parker). + 2000-01-12 Michael Krause * Released v0.3.9 diff -urN soundtracker-0.3.9/Makefile.am soundtracker-0.3.10/Makefile.am --- soundtracker-0.3.9/Makefile.am Wed Jan 12 20:29:00 2000 +++ soundtracker-0.3.10/Makefile.am Wed Jan 26 18:27:29 2000 @@ -27,3 +27,13 @@ tar zcf soundtracker-$(VERSION)-bin.tar.gz \ soundtracker-$(VERSION)-bin ./configure + +## disthelp is to be executed by root so that the rpm -tb works well +disthelp: + make dist + cp soundtracker-$(VERSION).tar.gz /home/rawstyle/dev/soundtracker/FTP/soundtracker/v0.3/ + make bindist + cp soundtracker-$(VERSION)-bin.tar.gz /home/rawstyle/dev/soundtracker/FTP/soundtracker/v0.3/ + rpm -tb soundtracker-$(VERSION).tar.gz + cp /usr/src/redhat/RPMS/i386/soundtracker-$(VERSION)-* /home/rawstyle/dev/soundtracker/FTP/soundtracker/v0.3/ + chown rawstyle.rawstyle /home/rawstyle/dev/soundtracker/FTP/soundtracker/v0.3/* diff -urN soundtracker-0.3.9/Makefile.in soundtracker-0.3.10/Makefile.in --- soundtracker-0.3.9/Makefile.in Wed Jan 12 20:42:41 2000 +++ soundtracker-0.3.10/Makefile.in Wed Jan 26 18:53:25 2000 @@ -420,6 +420,15 @@ soundtracker-$(VERSION)-bin ./configure +disthelp: + make dist + cp soundtracker-$(VERSION).tar.gz /home/rawstyle/dev/soundtracker/FTP/soundtracker/v0.3/ + make bindist + cp soundtracker-$(VERSION)-bin.tar.gz /home/rawstyle/dev/soundtracker/FTP/soundtracker/v0.3/ + rpm -tb soundtracker-$(VERSION).tar.gz + cp /usr/src/redhat/RPMS/i386/soundtracker-$(VERSION)-* /home/rawstyle/dev/soundtracker/FTP/soundtracker/v0.3/ + chown rawstyle.rawstyle /home/rawstyle/dev/soundtracker/FTP/soundtracker/v0.3/* + # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: diff -urN soundtracker-0.3.9/NEWS soundtracker-0.3.10/NEWS --- soundtracker-0.3.9/NEWS Wed Jan 12 20:39:23 2000 +++ soundtracker-0.3.10/NEWS Wed Jan 26 18:30:23 2000 @@ -2,6 +2,15 @@ (This file lists only major user-visible changes; the ChangeLog file contains more details) +What is new in soundtracker-0.3.10 (26-Jan-2000): + +* New "Insert" and "Backspace" key bindings in track editor +* "Escape" toggles editing mode even if we're playing +* Jazz edit mode more intelligent +* "Save region" function in sample editor +* Menu bar translation fixes +* Various other fixes + What is new in soundtracker-0.3.9 (12-Jan-2000): * ALSA updates for v0.5.0 diff -urN soundtracker-0.3.9/README soundtracker-0.3.10/README --- soundtracker-0.3.9/README Wed Jan 12 20:35:18 2000 +++ soundtracker-0.3.10/README Wed Jan 26 18:28:16 2000 @@ -4,7 +4,7 @@ http://www.soundtracker.org/ -------------------------------------------------------------- - v0.3.9 --- THIS IS A DEVELOPMENT VERSION! + v0.3.10 --- THIS IS A DEVELOPMENT VERSION! Written and (C) 1998-2000 by Michael Krause [ raw style / lego ] @@ -100,6 +100,10 @@ Left Alt - F4 Copy pattern Left Alt - F5 Paste pattern +Delete Clear part of the channel the cursor is over +Backspace Delete current position and pull rest of track upwards +Insert Shift rest of track upwards and insert a row + Any other keys Play notes on the keyboard. SAMPLE EDITOR @@ -107,6 +111,16 @@ Hold Shift and use left / right mouse buttons to set the loop points in the sample display. + + +REPORTING BUGS +=============== + +If you want to report a bug, please check first if you are running the +latest version of SoundTracker. If the bug is still present there, +send a bug report to the soundtracker-discuss mailing list (see below) +if you want feedback from other users, or send it to me directly +(m.krause@tu-harburg.de). MORE DOCUMENTATION diff -urN soundtracker-0.3.9/TODO soundtracker-0.3.10/TODO --- soundtracker-0.3.9/TODO Wed Jan 12 20:33:56 2000 +++ soundtracker-0.3.10/TODO Wed Jan 26 18:22:32 2000 @@ -1,61 +1,37 @@ things to do and known bugs (in no particular order) ------------------------------------------------------- -docu: das mit dem diff ist so nicht ganz korrekt +FILE TAB: problem reported by xavier with strange characters in the +file name entry widget. -jazz edit: zu dem kanal springen, auf dem keine note spielt, oder -auf dem zumindest das keyoff schon gekommen ist! - -jazz edit: only show buttons that are really useable (num_channels) - -space-bar auch ins menü (oder in keyboard configuration) - - - -message archive -> home page! - -http://www.iro.umontreal.ca/contrib/po/HTML/ - - - -toni-mixer: ------------ - -o Die Samples knacken irgendwie, wenn sie umschalten oder -stoppen. (aber auch in meinem Mixer) - -o Was soll das mit den linear frequencies? - -o Sollte das Mono-Downmixing im Mixer passieren oder hinterher in -audio.c? Im Mixer ist natürlich besser, weil der Puffer nur einmal -angefasst wird. +GUI: bpm and tempo spins behave a little bit strange sometimes. -o The code to handle unlimited length samples is clever. -o Limitation to 16bit samples only is to be discussed. Can conversion -to 32bit or float formats be avoided? -o My volume and shifting code is quite stupid. +=== GTK+ / GNOME bugs ===== -o The initialization (loop handling) and exit (mixbuffer downgrading) -code should be shared. +bug: start st, go to instrument page, go back to tracker page, hit +shift+space. jazz edit box is NOT displayed, this works only after +you use the menu bar once to toggle the box on. ---> BUG IN +GTK+/GNOME: in keyevent, the events are not being stopped, so _my_ +code is not buggy. +whoops: rf01102.xm, play it, switch to instrument page, then to sample +editor -> sample display widget behaves strangely. expose() is not +called -> bug in gtk+. -nic leveille's post vom 10 oct 1999 ====== GUI ========= bug: wenn man vorspult, werden die patterns im tracker schon geändert, bevor der song sich ändert. +space-bar -> keyboard configuration + status bar (indicates loading and playing and tracker columns) delink / link tab!!! -whoops: rf01102.xm, play it, switch to instrument page, then to sample -editor -> sample display widget behaves strangely. expose() is not -called -> bug in gtk+. - MAIN WINDOW "CONTROL PANEL": the scopes must be able to be replaced by an instrument list or something similarly useful in case you don't want the scopes there. the scopes could be put into their own window @@ -107,8 +83,6 @@ LOGO: add it somewhere -GUI: bpm and tempo spins behave a little bit strange sometimes. - SAMPLE EDITOR: sample loader / saver: check if the (width == 8 -> modifysample) code is correct. well, no need to check: it isn't. but find a nicer way. "for now, it works" :-) also, check the @@ -159,8 +133,45 @@ > Displaying all zeroes instead of blank spaces makes it > harder to read the tracks... - - +> You should re-design gui for some new features in sample editor, +> it would be great to see status line in main window and some shortcuts +> to switch between notebook pages. +> For example: +> ctrl+d - file requester +> ctrl+t - tracker +> ctrl+i - instrument editor +> ctrl+s - sample editor +> ctrl+m - module info + +file-operations: after saving, the directory must be rescanned! +unfortunately, there's no gtk+ call for this :( + +> - most important: the player and the pattern editor aren't tightly +> linked: the player continues to play while you can edit any pattern you +> want. this is very useful in my opinion. +> - IT doesn't automatically scroll when you enter an effect number (hmm +> confusing ;) +> --- .. ... +> ^ if I put an effect here, IT scrolls to the next line +> --- .. ... +> ^ if I put a number, IT scrolls to the right +> +> --- .. ... +> ^ if I put a number, IT scrolls to the next line +> +> > +> - it has different shortcuts for selections: +> alt-b (begin) alt-e (end) +> alt-l (whole column) alt-l twice (whole pattern) +> alt-k in the volume column slides the volume in the selection +> alt-x in the effect column slides the effects in the selection +> alt-x twice wipe out all effect data +> shift while pressing a note scrolls to the next column (depressing +> shift returns to the original position) this is useful for chords. +> a number of keys either to play the current pattern, the song, or the +> song starting from the current pattern + + ====== PLAYER / LOADER ======== LOADER: support loading from archives (gnome-libs-2 VFS in the future?) @@ -185,6 +196,29 @@ mod saver +toni-mixer: +----------- + +o Die Samples knacken irgendwie, wenn sie umschalten oder +stoppen. (aber auch in meinem Mixer) + +o Was soll das mit den linear frequencies? + +o Sollte das Mono-Downmixing im Mixer passieren oder hinterher in +audio.c? Im Mixer ist natürlich besser, weil der Puffer nur einmal +angefasst wird. + +o The code to handle unlimited length samples is clever. + +o Limitation to 16bit samples only is to be discussed. Can conversion +to 32bit or float formats be avoided? + +o My volume and shifting code is quite stupid. + +o The initialization (loop handling) and exit (mixbuffer downgrading) +code should be shared. + + ====== DRIVERS ======= @@ -211,7 +245,8 @@ SAMPLE DISPLAY: Fix for large sample lengths (overflow in XPOS_TO_OFFSET macro). - +MAILING LIST: put an archive on the home page. code some fancy +php3+mysql database with search function. ====== FUTURE ======= diff -urN soundtracker-0.3.9/app/clavier.c soundtracker-0.3.10/app/clavier.c --- soundtracker-0.3.9/app/clavier.c Sat Aug 21 19:20:56 1999 +++ soundtracker-0.3.10/app/clavier.c Sat Jan 22 14:41:05 2000 @@ -65,13 +65,6 @@ gint arg1, gpointer data); -/* Signal Marshalers */ -static void -clavier_marshal_signal_1 (GtkObject *object, - GtkSignalFunc func, - gpointer func_data, - GtkArg *args); - /* Clavier Methods */ static void clavier_class_init (ClavierClass *class); static void clavier_init (Clavier *clavier); @@ -128,25 +121,25 @@ clavier_signals[CLAVIERKEY_PRESS] = gtk_signal_new ("clavierkey_press", GTK_RUN_FIRST, object_class->type, GTK_SIGNAL_OFFSET (ClavierClass, clavierkey_press), - clavier_marshal_signal_1, GTK_TYPE_NONE, 1, + gtk_marshal_NONE__INT, GTK_TYPE_NONE, 1, GTK_TYPE_INT); clavier_signals[CLAVIERKEY_RELEASE] = gtk_signal_new ("clavierkey_release", GTK_RUN_FIRST, object_class->type, GTK_SIGNAL_OFFSET (ClavierClass, clavierkey_release), - clavier_marshal_signal_1, GTK_TYPE_NONE, 1, + gtk_marshal_NONE__INT, GTK_TYPE_NONE, 1, GTK_TYPE_INT); clavier_signals[CLAVIERKEY_ENTER] = gtk_signal_new ("clavierkey_enter", GTK_RUN_FIRST, object_class->type, GTK_SIGNAL_OFFSET (ClavierClass, clavierkey_enter), - clavier_marshal_signal_1, GTK_TYPE_NONE, 1, + gtk_marshal_NONE__INT, GTK_TYPE_NONE, 1, GTK_TYPE_INT); clavier_signals[CLAVIERKEY_LEAVE] = gtk_signal_new ("clavierkey_leave", GTK_RUN_FIRST, object_class->type, GTK_SIGNAL_OFFSET (ClavierClass, clavierkey_leave), - clavier_marshal_signal_1, GTK_TYPE_NONE, 1, + gtk_marshal_NONE__INT, GTK_TYPE_NONE, 1, GTK_TYPE_INT); gtk_object_class_add_signals (object_class, clavier_signals, LAST_SIGNAL); @@ -1053,21 +1046,6 @@ if (GTK_WIDGET_DRAWABLE (clavier)) gtk_widget_queue_draw (GTK_WIDGET (clavier)); -} - -/* Signal Marshalers */ - -static void -clavier_marshal_signal_1 (GtkObject *object, - GtkSignalFunc func, - gpointer func_data, - GtkArg *args) -{ - ClavierSignal1 rfunc; - - rfunc = (ClavierSignal1) func; - - (*rfunc) (object, GTK_VALUE_INT (args[0]), func_data); } void diff -urN soundtracker-0.3.9/app/drivers/Makefile.in soundtracker-0.3.10/app/drivers/Makefile.in --- soundtracker-0.3.9/app/drivers/Makefile.in Wed Jan 12 20:42:48 2000 +++ soundtracker-0.3.10/app/drivers/Makefile.in Wed Jan 26 18:53:32 2000 @@ -221,9 +221,7 @@ alsa2-output.o: alsa2-output.c ../../config.h alsa-input.o: alsa-input.c ../../config.h alsa-output.o: alsa-output.c ../../config.h -esd-output.o: esd-output.c ../../config.h ../i18n.h ../driver-out.h \ - ../driver.h ../mixer.h ../errors.h ../gui-subs.h \ - ../preferences.h +esd-output.o: esd-output.c ../../config.h file-output.o: file-output.c ../../config.h ../i18n.h ../driver-out.h \ ../driver.h ../mixer.h ../errors.h ../gui-subs.h \ ../preferences.h diff -urN soundtracker-0.3.9/app/drivers/esd-output.c soundtracker-0.3.10/app/drivers/esd-output.c --- soundtracker-0.3.9/app/drivers/esd-output.c Sat Oct 9 18:59:19 1999 +++ soundtracker-0.3.10/app/drivers/esd-output.c Tue Jan 18 17:47:51 2000 @@ -25,7 +25,9 @@ #include #include +#include +#include #include #include diff -urN soundtracker-0.3.9/app/file-operations.c soundtracker-0.3.10/app/file-operations.c --- soundtracker-0.3.9/app/file-operations.c Fri Dec 24 16:40:35 1999 +++ soundtracker-0.3.10/app/file-operations.c Fri Jan 21 16:47:13 2000 @@ -2,7 +2,7 @@ /* * The Real SoundTracker - file operations page * - * Copyright (C) 1999 Michael Krause + * Copyright (C) 1999-2000 Michael Krause * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff -urN soundtracker-0.3.9/app/file-operations.h soundtracker-0.3.10/app/file-operations.h --- soundtracker-0.3.9/app/file-operations.h Sun Dec 19 17:30:20 1999 +++ soundtracker-0.3.10/app/file-operations.h Fri Jan 21 16:35:02 2000 @@ -24,6 +24,10 @@ #include +/* When adding new dialogs, add them in the "not included in the File + tab" section first, or create appropriate labels in + file-operations.c. */ + enum { DIALOG_LOAD_MOD = 0, DIALOG_SAVE_MOD, @@ -32,6 +36,8 @@ DIALOG_SAVE_SAMPLE, DIALOG_LOAD_INSTRUMENT, DIALOG_SAVE_INSTRUMENT, + + DIALOG_SAVE_RGN_SAMPLE, // is not included in the "File" tab DIALOG_LAST }; diff -urN soundtracker-0.3.9/app/gui.c soundtracker-0.3.10/app/gui.c --- soundtracker-0.3.9/app/gui.c Sat Jan 8 12:20:54 2000 +++ soundtracker-0.3.10/app/gui.c Sat Jan 22 15:14:18 2000 @@ -303,7 +303,7 @@ int alt, guint32 keyval) { - gboolean handled = FALSE; + gboolean handled = FALSE, b; switch (keyval) { case GDK_F1 ... GDK_F7: @@ -368,18 +368,22 @@ handled = TRUE; break; case ' ': - if(ctrl || alt) - break; - if(!shift) { - if(!GUI_ENABLED) { - gui_play_stop(); - } else { - gui_play_stop(); - /* toggle editing mode */ - gtk_toggle_button_set_state(GTK_TOGGLE_BUTTON(editing_toggle), !GUI_EDITING); - } - handled = TRUE; + if(ctrl || alt || shift) + break; + b = GUI_ENABLED; + gui_play_stop(); + if(b) { + /* toggle editing mode (only if we haven't been in playing mode) */ + gtk_toggle_button_set_state(GTK_TOGGLE_BUTTON(editing_toggle), !GUI_EDITING); } + handled = TRUE; + break; + case GDK_Escape: + if(ctrl || alt || shift) + break; + /* toggle editing mode, even if we're in playing mode */ + gtk_toggle_button_set_state(GTK_TOGGLE_BUTTON(editing_toggle), !GUI_EDITING); + handled = TRUE; break; } @@ -428,7 +432,7 @@ } } - return 1; + return TRUE; } static void @@ -479,7 +483,6 @@ playlist_song_length_changed (Playlist *p, int length) { -printf("%d\n", length); xm->song_length = length; playlist_entry_changed(p, -1, -1); } @@ -660,7 +663,7 @@ case AUDIO_BACKPIPE_PLAYING_PATTERN_STARTED: startstop_count--; gui_playing_mode = (a == AUDIO_BACKPIPE_PLAYING_STARTED) ? PLAYING_SONG : PLAYING_PATTERN; - gtk_toggle_button_set_state(GTK_TOGGLE_BUTTON(editing_toggle), 0); + gtk_toggle_button_set_state(GTK_TOGGLE_BUTTON(editing_toggle), FALSE); gui_enable(0); scope_group_start_updating(scopegroup); tracker_start_updating(); @@ -777,7 +780,7 @@ } gui_subs_set_slider_value(&tempo_slider, xm->tempo); gui_subs_set_slider_value(&bpm_slider, xm->bpm); - tracker_set_num_channels(tracker, xm->num_channels); + track_editor_set_num_channels(xm->num_channels); gtk_spin_button_set_value(GTK_SPIN_BUTTON(spin_numchans), xm->num_channels); scope_group_set_num_channels(scopegroup, xm->num_channels); xm_set_modified(m); @@ -858,7 +861,6 @@ gui_enable (int enable) { gtk_widget_set_sensitive(vscrollbar, enable); - gtk_widget_set_sensitive(editing_toggle, enable); gtk_widget_set_sensitive(spin_patlen, enable); playlist_enable(playlist, enable); } @@ -946,7 +948,10 @@ int gui_get_current_jump_value (void) { - return gtk_spin_button_get_value_as_int(GTK_SPIN_BUTTON(spin_jump)); + if(!GUI_ENABLED) + return 0; + else + return gtk_spin_button_get_value_as_int(GTK_SPIN_BUTTON(spin_jump)); } int diff -urN soundtracker-0.3.9/app/menubar.c soundtracker-0.3.10/app/menubar.c --- soundtracker-0.3.9/app/menubar.c Sun Dec 26 19:35:27 1999 +++ soundtracker-0.3.10/app/menubar.c Tue Jan 18 17:32:34 2000 @@ -21,6 +21,8 @@ #include +#include + #include "i18n.h" #include "menubar.h" #include "gui.h" @@ -485,6 +487,20 @@ return (char*)p; } +static void +strip_underscores (char *dest, const char *src) +{ + char c; + + while((c = *src++)) { + if(c != '_') { + *dest++ = c; + } + } + + *dest = '\0'; +} + void menubar_init_prefs () { @@ -501,11 +517,18 @@ gtk_item_factory_parse_rc(buf); - w = gtk_item_factory_get_widget(item_factory, tl("/Settings/Display Oscilloscopes")); + /* UGH: Oh, oh... gtk+ requires that gtk_item_factory_get_widget() + be called without the underscores in the menu string */ + strip_underscores(buf, tl("/Settings/Display _Oscilloscopes")); + w = gtk_item_factory_get_widget(item_factory, buf); gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(w), gui_settings.gui_display_scopes); - w = gtk_item_factory_get_widget(item_factory, tl("/Settings/Use Backing Store")); + + strip_underscores(buf, tl("/Settings/Use _Backing Store")); + w = gtk_item_factory_get_widget(item_factory, buf); gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(w), gui_settings.gui_use_backing_store); - w = gtk_item_factory_get_widget(item_factory, tl("/Settings/Save Settings on Exit")); + + strip_underscores(buf, tl("/Settings/Save Settings on _Exit")); + w = gtk_item_factory_get_widget(item_factory, buf); gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(w), gui_settings.save_settings_on_exit); } @@ -521,9 +544,28 @@ "
", accel_group); - for(i = 0, all_translated = TRUE; - all_translated && i < sizeof(menu_items) / sizeof(menu_items[0]); i++) { - all_translated &= !strcmp(menu_items[i].path, _(menu_items[i].path)); + /* + + We need to check whether all menu entries have been + translated. If this is not the case, there will be a "File" menu + and a menu with a title corresponding to the translation of + "File", for example, if only parts of the "File" menu have been + translated. Since this looks rather messy, we disable + translation of the menu bar completely. + + */ + +#ifdef ENABLE_NLS + for(i = 0, all_translated = TRUE; all_translated && i < sizeof(menu_items) / sizeof(menu_items[0]); i++) { + /* as long as all strings have been translated, keep all_translated = TRUE */ + char *str = strchr(menu_items[i].path + 1, '/'); + if(str != NULL && strlen(str) > 2) { + gboolean string_translated = (0 != strcmp(menu_items[i].path, _(menu_items[i].path))); + all_translated &= string_translated; + if(!string_translated) { + fprintf(stderr, "*** Untranslated menu entry: %s\n", menu_items[i].path); + } + } } if(all_translated) { @@ -531,10 +573,9 @@ menu_items[i].path = _(menu_items[i].path); } } else { -#ifdef ENABLE_NLS fprintf(stderr, "*** SoundTracker Non-GNOME: Disabling menu bar translation because\n*** not all strings have been translated.\n"); -#endif } +#endif gtk_item_factory_create_items (item_factory, sizeof(menu_items) / sizeof(menu_items[0]), diff -urN soundtracker-0.3.9/app/playlist.c soundtracker-0.3.10/app/playlist.c --- soundtracker-0.3.9/app/playlist.c Sat Jan 8 12:24:02 2000 +++ soundtracker-0.3.10/app/playlist.c Sat Jan 22 14:41:05 2000 @@ -316,33 +316,6 @@ /* --- gtk+ object initialization crap --- */ static void -my_1int_marshal (GtkObject *object, - GtkSignalFunc func, - gpointer func_data, - GtkArg *args) -{ - typedef void (*my_1int_marshal_func) (Playlist *, int); - - my_1int_marshal_func rfunc = (my_1int_marshal_func) func; - (*rfunc) (PLAYLIST(object), - GTK_VALUE_INT(args[0])); -} - -static void -my_2int_marshal (GtkObject *object, - GtkSignalFunc func, - gpointer func_data, - GtkArg *args) -{ - typedef void (*my_2int_marshal_func) (Playlist *, int, int); - - my_2int_marshal_func rfunc = (my_2int_marshal_func) func; - (*rfunc) (PLAYLIST(object), - GTK_VALUE_INT(args[0]), - GTK_VALUE_INT(args[1])); -} - -static void playlist_class_init (PlaylistClass *class) { GtkObjectClass *object_class; @@ -353,28 +326,28 @@ GTK_RUN_FIRST, object_class->type, GTK_SIGNAL_OFFSET(PlaylistClass, current_position_changed), - my_1int_marshal, + gtk_marshal_NONE__INT, GTK_TYPE_NONE, 1, GTK_TYPE_INT); playlist_signals[SIG_RESTART_POSITION_CHANGED] = gtk_signal_new ("restart_position_changed", GTK_RUN_FIRST, object_class->type, GTK_SIGNAL_OFFSET(PlaylistClass, restart_position_changed), - my_1int_marshal, + gtk_marshal_NONE__INT, GTK_TYPE_NONE, 1, GTK_TYPE_INT); playlist_signals[SIG_SONG_LENGTH_CHANGED] = gtk_signal_new ("song_length_changed", GTK_RUN_FIRST, object_class->type, GTK_SIGNAL_OFFSET(PlaylistClass, song_length_changed), - my_1int_marshal, + gtk_marshal_NONE__INT, GTK_TYPE_NONE, 1, GTK_TYPE_INT); playlist_signals[SIG_ENTRY_CHANGED] = gtk_signal_new ("entry_changed", GTK_RUN_FIRST, object_class->type, GTK_SIGNAL_OFFSET(PlaylistClass, entry_changed), - my_2int_marshal, + gtk_marshal_NONE__INT_INT, GTK_TYPE_NONE, 2, GTK_TYPE_INT, GTK_TYPE_INT); diff -urN soundtracker-0.3.9/app/sample-display.c soundtracker-0.3.10/app/sample-display.c --- soundtracker-0.3.9/app/sample-display.c Mon Dec 20 18:27:29 1999 +++ soundtracker-0.3.10/app/sample-display.c Sat Jan 22 14:36:19 2000 @@ -785,19 +785,6 @@ } static void -my_2ints_marshal (GtkObject *object, - GtkSignalFunc func, - gpointer func_data, - GtkArg *args) -{ - typedef void (*my_2ints_marshal_func)(SampleDisplay *, int, int); - my_2ints_marshal_func rfunc = (my_2ints_marshal_func) func; - (*rfunc) (SAMPLE_DISPLAY(object), - GTK_VALUE_INT(args[0]), - GTK_VALUE_INT(args[1])); -} - -static void sample_display_class_init (SampleDisplayClass *class) { GtkObjectClass *object_class; @@ -822,7 +809,7 @@ GTK_RUN_FIRST, object_class->type, GTK_SIGNAL_OFFSET(SampleDisplayClass, selection_changed), - my_2ints_marshal, + gtk_marshal_NONE__INT_INT, GTK_TYPE_NONE, 2, GTK_TYPE_INT, GTK_TYPE_INT); @@ -830,7 +817,7 @@ GTK_RUN_FIRST, object_class->type, GTK_SIGNAL_OFFSET(SampleDisplayClass, loop_changed), - my_2ints_marshal, + gtk_marshal_NONE__INT_INT, GTK_TYPE_NONE, 2, GTK_TYPE_INT, GTK_TYPE_INT); @@ -838,7 +825,7 @@ GTK_RUN_FIRST, object_class->type, GTK_SIGNAL_OFFSET(SampleDisplayClass, window_changed), - my_2ints_marshal, + gtk_marshal_NONE__INT_INT, GTK_TYPE_NONE, 2, GTK_TYPE_INT, GTK_TYPE_INT); diff -urN soundtracker-0.3.9/app/sample-editor.c soundtracker-0.3.10/app/sample-editor.c --- soundtracker-0.3.9/app/sample-editor.c Sat Jan 8 12:36:56 2000 +++ soundtracker-0.3.10/app/sample-editor.c Fri Jan 21 17:22:48 2000 @@ -1,7 +1,7 @@ /* * The Real SoundTracker - sample editor * - * Copyright (C) 1998-1999 Michael Krause + * Copyright (C) 1998-2000 Michael Krause * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -63,7 +63,7 @@ static STSample *current_sample = NULL; static GtkWidget *spin_volume, *spin_panning, *spin_finetune, *spin_relnote; -static GtkWidget *savebutton; +static GtkWidget *savebutton, *savebutton_rgn; static SampleDisplay *sampledisplay; static GtkWidget *sample_editor_hscrollbar; static GtkWidget *loopradio[3], *resolution_radio[2]; @@ -150,6 +150,7 @@ static void sample_editor_load_wav(void); static void sample_editor_save_wav(void); +static void sample_editor_save_region_wav(void); static void sample_editor_open_volume_ramp_dialog(void); static void sample_editor_close_volume_ramp_dialog(void); @@ -282,6 +283,8 @@ gtk_file_selection_set_filename(GTK_FILE_SELECTION(fileops_dialogs[DIALOG_LOAD_SAMPLE]), gui_settings.loadsmpl_path); fileops_dialogs[DIALOG_SAVE_SAMPLE] = file_selection_create(_("Save WAV..."), sample_editor_save_wav); gtk_file_selection_set_filename(GTK_FILE_SELECTION(fileops_dialogs[DIALOG_SAVE_SAMPLE]), gui_settings.savesmpl_path); + fileops_dialogs[DIALOG_SAVE_RGN_SAMPLE] = file_selection_create(_("Save region as WAV..."), sample_editor_save_region_wav); + gtk_file_selection_set_filename(GTK_FILE_SELECTION(fileops_dialogs[DIALOG_SAVE_RGN_SAMPLE]), gui_settings.savesmpl_path); #endif thing = gtk_button_new_with_label(_("Load Sample")); @@ -303,12 +306,17 @@ gtk_widget_set_sensitive(thing, 0); #endif - thing = gtk_button_new_with_label(_("Clear Sample")); + thing = gtk_button_new_with_label(_("Save Region")); gtk_signal_connect(GTK_OBJECT(thing), "clicked", - GTK_SIGNAL_FUNC(sample_editor_clear_clicked), NULL); + GTK_SIGNAL_FUNC(fileops_open_dialog), (void*)DIALOG_SAVE_RGN_SAMPLE); gtk_box_pack_start(GTK_BOX(vbox), thing, TRUE, TRUE, 0); gtk_widget_show(thing); + savebutton_rgn = thing; +#ifdef NO_AUDIOFILE + gtk_widget_set_sensitive(thing, 0); +#endif + thing = gtk_button_new_with_label(_("Monitor")); gtk_signal_connect(GTK_OBJECT(thing), "clicked", GTK_SIGNAL_FUNC(sample_editor_monitor_clicked), NULL); @@ -383,12 +391,11 @@ gtk_box_pack_start(GTK_BOX(vbox), thing, TRUE, TRUE, 0); gtk_widget_show(thing); - thing = gtk_button_new_with_label(_("Filter")); -/* gtk_signal_connect(GTK_OBJECT(thing), "clicked", - GTK_SIGNAL_FUNC(sample_editor_filter_clicked), NULL); -*/ gtk_box_pack_start(GTK_BOX(vbox), thing, TRUE, TRUE, 0); + thing = gtk_button_new_with_label(_("Clear Sample")); + gtk_signal_connect(GTK_OBJECT(thing), "clicked", + GTK_SIGNAL_FUNC(sample_editor_clear_clicked), NULL); + gtk_box_pack_start(GTK_BOX(vbox), thing, TRUE, TRUE, 0); gtk_widget_show(thing); - gtk_widget_set_sensitive(thing, 0); } static void @@ -456,6 +463,7 @@ gtk_widget_set_sensitive(box_params, 0); gtk_widget_set_sensitive(box_sel, 0); gtk_widget_set_sensitive(savebutton, 0); + gtk_widget_set_sensitive(savebutton_rgn, 0); } if(!sts) return; @@ -502,6 +510,7 @@ gtk_widget_set_sensitive(box_sel, 1); #ifndef NO_AUDIOFILE gtk_widget_set_sensitive(savebutton, 1); + gtk_widget_set_sensitive(savebutton_rgn, 1); #endif gtk_toggle_button_set_state(GTK_TOGGLE_BUTTON(resolution_radio[(s->type / 8) - 1]), TRUE); } @@ -938,6 +947,31 @@ oldsample->sample.data = newsample; oldsample->sample.length = newlen; + /* Move loop start and end along with splice */ + if(oldsample->sample.loopstart > ss && + oldsample->sample.loopend < se) { + /* loop was wholly within selection -- remove it */ + oldsample->sample.looptype = ST_MIXER_SAMPLE_LOOPTYPE_NONE; + oldsample->sample.loopstart = 0; + oldsample->sample.loopend = 1; + } else { + if(oldsample->sample.loopstart > se) { + /* loopstart was after selection */ + oldsample->sample.loopstart -= (se-ss); + } else if(oldsample->sample.loopstart > ss) { + /* loopstart was within selection */ + oldsample->sample.loopstart = ss; + } + + if(oldsample->sample.loopend > se) { + /* loopend was after selection */ + oldsample->sample.loopend -= (se-ss); + } else if(oldsample->sample.loopend > ss) { + /* loopend was within selection */ + oldsample->sample.loopend = ss; + } + } + st_sample_fix_loop(oldsample); sample_editor_unlock_sample(); sample_editor_set_sample(oldsample); @@ -1310,20 +1344,13 @@ } static void -sample_editor_save_wav (void) +sample_editor_save_wav_main (const gchar *fn, + guint32 offset, + guint32 length) { - const gchar *fn; AFfilehandle outfile; AFfilesetup outfilesetup; - gtk_widget_hide(fileops_dialogs[DIALOG_SAVE_SAMPLE]); - - g_return_if_fail(current_sample != NULL); - if(current_sample->sample.data == NULL) - return; - - fn = gtk_file_selection_get_filename(GTK_FILE_SELECTION(fileops_dialogs[DIALOG_SAVE_SAMPLE])); - file_selection_save_path(fn, gui_settings.savesmpl_path); outfilesetup = afNewFileSetup(); @@ -1343,7 +1370,9 @@ if(current_sample->sample.type == 8) sample_editor_modify_wav_sample(current_sample); - afWriteFrames(outfile, AF_DEFAULT_TRACK, current_sample->sample.data, current_sample->sample.length); + afWriteFrames(outfile, AF_DEFAULT_TRACK, + current_sample->sample.data + offset * mixer_sample_word_length(¤t_sample->sample), + length); afCloseFile(outfile); if(current_sample->sample.type == 8) @@ -1351,6 +1380,45 @@ sample_editor_unlock_sample(); } + +static void +sample_editor_save_wav (void) +{ + const gchar *fn; + + fn = gtk_file_selection_get_filename(GTK_FILE_SELECTION(fileops_dialogs[DIALOG_SAVE_SAMPLE])); + + gtk_widget_hide(fileops_dialogs[DIALOG_SAVE_SAMPLE]); + + g_return_if_fail(current_sample != NULL); + if(current_sample->sample.data == NULL) + return; + + sample_editor_save_wav_main(fn, 0, current_sample->sample.length); +} + +static void +sample_editor_save_region_wav (void) +{ + const gchar *fn; + int rss = sampledisplay->sel_start, rse = sampledisplay->sel_end; + + fn = gtk_file_selection_get_filename(GTK_FILE_SELECTION(fileops_dialogs[DIALOG_SAVE_RGN_SAMPLE])); + + gtk_widget_hide(fileops_dialogs[DIALOG_SAVE_RGN_SAMPLE]); + + g_return_if_fail(current_sample != NULL); + if(current_sample->sample.data == NULL) + return; + + if(rss == -1) { + error_error(_("Nothing to save.")); + return; + } + + sample_editor_save_wav_main(fn, rss, rse - rss); +} + #endif /* NO_AUDIOFILE */ /* ============================ Sampling functions coming up -------- */ diff -urN soundtracker-0.3.9/app/track-editor.c soundtracker-0.3.10/app/track-editor.c --- soundtracker-0.3.9/app/track-editor.c Sun Dec 26 13:51:06 1999 +++ soundtracker-0.3.10/app/track-editor.c Fri Jan 21 16:58:30 2000 @@ -58,7 +58,9 @@ /* jazz edit stuff */ static GtkWidget *jazzbox; +static GtkWidget *jazztable; static GtkToggleButton *jazztoggles[32]; +static int jazz_numshown = 0; static int jazz_enabled = FALSE; static void vscrollbar_changed(GtkAdjustment *adj); @@ -68,6 +70,30 @@ static gboolean track_editor_handle_column_input(Tracker *t, int gdkkey); void +track_editor_set_num_channels (int n) +{ + int i; + + tracker_set_num_channels(tracker, n); + + // Remove superfluous togglebuttons from table + for(i = n; i < jazz_numshown; i++) { + gtk_object_ref(GTK_OBJECT(jazztoggles[i])); + gtk_container_remove(GTK_CONTAINER(jazztable), GTK_WIDGET(jazztoggles[i])); + } + + // Resize table + gtk_table_resize(GTK_TABLE(jazztable), 1, n); + + // Add new togglebuttons to table + for(i = jazz_numshown; i < n; i++) { + gtk_table_attach_defaults(GTK_TABLE(jazztable), GTK_WIDGET(jazztoggles[i]), i, i + 1, 0, 1); + } + + jazz_numshown = n; +} + +void tracker_page_create (GtkNotebook *nb) { GtkWidget *vbox, *hbox, *table, *thing; @@ -83,7 +109,7 @@ gtk_box_pack_start(GTK_BOX(hbox), thing, FALSE, TRUE, 0); gtk_widget_show(thing); - table = gtk_table_new(1, 32, FALSE); + jazztable = table = gtk_table_new(1, 1, FALSE); gtk_box_pack_start(GTK_BOX(hbox), table, TRUE, TRUE, 0); gtk_widget_show(table); @@ -93,7 +119,6 @@ thing = gtk_toggle_button_new_with_label(buf); jazztoggles[i] = GTK_TOGGLE_BUTTON(thing); gtk_widget_show(thing); - gtk_table_attach(GTK_TABLE(table), thing, i, i + 1, 0, 1, GTK_FILL, 0, 0, 0); } table = gtk_table_new(2, 2, FALSE); @@ -105,12 +130,8 @@ gtk_widget_show(thing); gtk_signal_connect(GTK_OBJECT(thing), "patpos", GTK_SIGNAL_FUNC(update_vscrollbar), NULL); gtk_signal_connect(GTK_OBJECT(thing), "xpanning", GTK_SIGNAL_FUNC(update_hscrollbar), NULL); -// gtk_widget_set_events(thing, gtk_widget_get_events (thing) | GDK_BUTTON_PRESS_MASK); -// gtk_signal_connect(GTK_OBJECT(thing), "button_press_event", GTK_SIGNAL_FUNC(tracker_popup_menu), NULL); tracker = TRACKER(thing); -// tracker_create_popup_menu(); - hscrollbar = gtk_hscrollbar_new(NULL); gtk_table_attach(GTK_TABLE(table), hscrollbar, 0, 1, 1, 2, GTK_FILL, 0, 0, 0); gtk_widget_show(hscrollbar); @@ -165,6 +186,43 @@ } } +static gboolean +track_editor_is_channel_playing (int ch) +{ + /* Is there a note playing on channel `ch'? Used for jazz edit. */ + + int i; + + for(i = 0; i < sizeof(note_running) / sizeof(note_running[0]); i++) { + if(note_running[i] == ch) { + return TRUE; + } + } + + return FALSE; +} + +static int +track_editor_find_next_jazz_channel (int current_channel, + int note) +{ + /* Jazz Edit Mode. The user has selected some channels that we can + use. Go to the next one where no sample is currently + playing. */ + + int j, n; + + for(j = 0, n = (current_channel + 1) % xm->num_channels; + j < xm->num_channels - 1; + j++, n = (n+1) % xm->num_channels) { + if(jazztoggles[n]->active && !track_editor_is_channel_playing(n)) { + return n; + } + } + + return current_channel; +} + void track_editor_do_the_note_key (int notekeymeaning, gboolean pressed, @@ -184,10 +242,7 @@ gui_play_note(tracker->cursor_ch, note); note_running[note] = tracker->cursor_ch; if(jazz_enabled) { - for(j = 0, n = (tracker->cursor_ch + 1) % xm->num_channels; j < xm->num_channels - 1; j++, n = (n+1) % xm->num_channels) { - if(jazztoggles[n]->active) - break; - } + n = track_editor_find_next_jazz_channel(tracker->cursor_ch, note); tracker_step_cursor_channel(tracker, n - tracker->cursor_ch); } } @@ -340,9 +395,8 @@ break; case GDK_Shift_R: /* record pattern */ - break; + break; case GDK_Delete: - case GDK_BackSpace: if(GTK_TOGGLE_BUTTON(editing_toggle)->active) { XMNote *note = &t->curpattern->channels[t->cursor_ch][t->patpos]; @@ -361,7 +415,7 @@ default: g_assert_not_reached(); break; - } + } tracker_redraw_current_row(t); tracker_step_cursor_row(t, gui_get_current_jump_value()); @@ -369,6 +423,45 @@ handled = TRUE; } break; + case GDK_Insert: + if(GTK_TOGGLE_BUTTON(editing_toggle)->active) { + XMNote *note = &t->curpattern->channels[t->cursor_ch][t->patpos]; + + for(i = t->curpattern->length - 1; i>t->patpos; --i) + t->curpattern->channels[t->cursor_ch][i] = t->curpattern->channels[t->cursor_ch][i-1]; + + note->note = 0; + note->instrument = 0; + note->volume = 0; + note->fxtype = 0; + note->fxparam = 0; + + tracker_redraw_current_row(t); + xm->modified = 1; + handled = TRUE; + } + break; + case GDK_BackSpace: + if(GTK_TOGGLE_BUTTON(editing_toggle)->active) { + XMNote *note; + + if(t->patpos) { --t->patpos; + for(i = t->patpos; icurpattern->length-1; i++) + t->curpattern->channels[t->cursor_ch][i] = t->curpattern->channels[t->cursor_ch][i+1]; + + note = &t->curpattern->channels[t->cursor_ch][t->curpattern->length - 1]; + note->note = 0; + note->instrument = 0; + note->volume = 0; + note->fxtype = 0; + note->fxparam = 0; + + tracker_redraw_current_row(t); + xm->modified = 1; + handled = TRUE; } + } + break; + default: if(!ctrl) { if(GTK_TOGGLE_BUTTON(editing_toggle)->active) { diff -urN soundtracker-0.3.9/app/track-editor.h soundtracker-0.3.10/app/track-editor.h --- soundtracker-0.3.9/app/track-editor.h Wed Oct 6 16:03:37 1999 +++ soundtracker-0.3.10/app/track-editor.h Tue Jan 18 18:29:01 2000 @@ -47,6 +47,8 @@ void track_editor_toggle_jazz_edit (void); +void track_editor_set_num_channels (int n); + void track_editor_load_config (void); void track_editor_save_config (void); diff -urN soundtracker-0.3.9/app/xm.c soundtracker-0.3.10/app/xm.c --- soundtracker-0.3.9/app/xm.c Sat Nov 20 16:08:02 1999 +++ soundtracker-0.3.10/app/xm.c Wed Jan 19 19:28:35 2000 @@ -857,6 +857,11 @@ recode_ibmpc_to_latin1(xm->name, 20); xm->song_length = get_le_16(xh + 64); xm->restart_position = get_le_16(xh + 66); + + if(xm->restart_position >= xm->song_length) { + xm->restart_position = xm->song_length - 1; + } + xm->num_channels = get_le_16(xh + 68); num_patterns = get_le_16(xh + 70); num_instruments = get_le_16(xh + 72); diff -urN soundtracker-0.3.9/configure soundtracker-0.3.10/configure --- soundtracker-0.3.9/configure Wed Jan 12 20:35:24 2000 +++ soundtracker-0.3.10/configure Wed Jan 26 18:32:32 2000 @@ -722,7 +722,7 @@ PACKAGE=soundtracker -VERSION=0.3.9 +VERSION=0.3.10 if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then { echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; } diff -urN soundtracker-0.3.9/configure.in soundtracker-0.3.10/configure.in --- soundtracker-0.3.9/configure.in Wed Jan 12 20:35:19 2000 +++ soundtracker-0.3.10/configure.in Wed Jan 26 18:28:17 2000 @@ -1,7 +1,7 @@ dnl Process this file with autoconf to produce a configure script. AC_INIT(app/endian-conv.h) -AM_INIT_AUTOMAKE(soundtracker, 0.3.9) +AM_INIT_AUTOMAKE(soundtracker, 0.3.10) AM_CONFIG_HEADER(config.h) dnl ----------------------------------------------------------------------- diff -urN soundtracker-0.3.9/doc/hacking.html soundtracker-0.3.10/doc/hacking.html --- soundtracker-0.3.9/doc/hacking.html Sun Dec 26 19:38:40 1999 +++ soundtracker-0.3.10/doc/hacking.html Tue Jan 18 18:23:20 2000 @@ -1,6 +1,6 @@ - + SoundTracker internals @@ -227,6 +227,12 @@

Mixer API

+

+I'm not sure that this API will stay in its current form. Most probably +I'll just remove the public interface and integrate a mixer into the +program's core. + +

Contributing Code

@@ -281,14 +287,21 @@ to generate a file containing only your changes, and no auto-generated files. -
  • Send the patch to the `soundtracker-discuss' mailing-list. If you're +
  • Remove the `po' directory patches from the diff (that's what usually + +makes the patch unnecessarily large). Or just remove +the po directories before generating the diff. + +
  • Send the patch to the `soundtracker-discuss' mailing-list, if you -not subscribed, then subscribe first (see README file). +want feedback from other users. If you're +not subscribed, then subscribe first (see README file). Mail it directly +to the maintainer (`m.krause@tu-harburg.de') instead of to the list if it's large. Please explain what the patch changes.


    -This document was generated on 26 December 1999 using +This document was generated on 18 January 2000 using texi2html 1.56k. diff -urN soundtracker-0.3.9/doc/hacking.texi soundtracker-0.3.10/doc/hacking.texi --- soundtracker-0.3.9/doc/hacking.texi Fri Oct 8 16:33:05 1999 +++ soundtracker-0.3.10/doc/hacking.texi Tue Jan 18 18:24:25 2000 @@ -33,7 +33,7 @@ the same time, with one editing window. Some of the GUI code has already been modularized, since some of the editing facilities have been encapsulated in custom GTK+ widgets, for example sample-display.c, -clavier.c, envelope-box.c and tracker.c. Noteworthy exceptions and +clavier.c, envelope-box.c, playlist.c and tracker.c. Noteworthy exceptions and containers of generous amounts of global variables are gui.c, sample-editor.c, instrument-editor.c and xm-player.c. @@ -163,6 +163,10 @@ @chapter Mixer API @node Mixer API, , Top, Top +I'm not sure that this API will stay in its current form. Most probably +I'll just remove the public interface and integrate a mixer into the +program's core. + @chapter Contributing Code @node Contributing Code, , Top, Top @@ -207,8 +211,14 @@ to generate a file containing only your changes, and no auto-generated files. -@item Send the patch to the `soundtracker-discuss' mailing-list. If you're -not subscribed, then subscribe first (see README file). +@item Remove the `po' directory patches from the diff (that's what usually +makes the patch unnecessarily large). Or just remove +the po directories before generating the diff. + +@item Send the patch to the `soundtracker-discuss' mailing-list, if you +want feedback from other users. If you're +not subscribed, then subscribe first (see README file). Mail it directly +to the maintainer (`m.krause@@tu-harburg.de') instead of to the list if it's large. Please explain what the patch changes. @end itemize diff -urN soundtracker-0.3.9/doc/hacking.txt soundtracker-0.3.10/doc/hacking.txt --- soundtracker-0.3.9/doc/hacking.txt Sun Dec 26 19:38:40 1999 +++ soundtracker-0.3.10/doc/hacking.txt Tue Jan 18 18:23:20 2000 @@ -153,6 +153,10 @@ Mixer API ********* + I'm not sure that this API will stay in its current form. Most +probably I'll just remove the public interface and integrate a mixer +into the program's core. + Contributing Code ***************** @@ -191,7 +195,14 @@ to generate a file containing only your changes, and no auto-generated files. - * Send the patch to the `soundtracker-discuss' mailing-list. If - you're not subscribed, then subscribe first (see README file). + * Remove the `po' directory patches from the diff (that's what + usually makes the patch unnecessarily large). Or just remove the + po directories before generating the diff. + + * Send the patch to the `soundtracker-discuss' mailing-list, if you + want feedback from other users. If you're not subscribed, then + subscribe first (see README file). Mail it directly to the + maintainer (`m.krause@tu-harburg.de') instead of to the list if + it's large. Please explain what the patch changes. diff -urN soundtracker-0.3.9/po/POTFILES.in soundtracker-0.3.10/po/POTFILES.in --- soundtracker-0.3.9/po/POTFILES.in Sat Dec 18 22:01:51 1999 +++ soundtracker-0.3.10/po/POTFILES.in Sat Jan 15 16:48:34 2000 @@ -21,6 +21,7 @@ app/menubar.c app/mixers/integer32.c app/module-info.c +app/playlist.c app/poll.c app/preferences.c app/recode.c diff -urN soundtracker-0.3.9/po/cat-id-tbl.c soundtracker-0.3.10/po/cat-id-tbl.c --- soundtracker-0.3.9/po/cat-id-tbl.c Sat Jan 8 11:56:27 2000 +++ soundtracker-0.3.10/po/cat-id-tbl.c Fri Jan 21 17:22:59 2000 @@ -120,25 +120,25 @@ {"Instrument Editor", 90}, {"Volume envelope", 91}, {"Panning envelope", 92}, - {"Load Instrument..", 93}, - {"Save Instrument..", 94}, + {"Load Instrument...", 93}, + {"Save Instrument...", 94}, {"Load XI", 95}, {"Save XI", 96}, {"Vibrato Type:", 97}, {"Note:", 98}, {"Initialize", 99}, {"The key that inserts the special keyoff note for FastTracker modules.", 100}, - {"Upper Octave Keys..", 101}, + {"Upper Octave Keys...", 101}, {"\ These are the keys on the upper half of the keyboard. The c key is normally \ the key to the right of the TAB key. The rest of the keys should be ordered \ in a piano keyboard fashion, including the number keys row above.", 102}, - {"Lower Octave Keys..", 103}, + {"Lower Octave Keys...", 103}, {"\ These are the keys on the lower half of the keyboard. The c key is normally \ the first character key to the right of the left Shift key. The rest of the \ keys should be ordered in a piano keyboard fashion, including the row above.", 104}, - {"Other Keys..", 105}, + {"Other Keys...", 105}, {"Various other keys", 106}, {"Function", 107}, {"Assignment", 108}, @@ -272,122 +272,127 @@ {"Songname:", 225}, {"Frequencies:", 226}, {"ProTracker Mode", 227}, + {"Song length", 228}, + {"Current pos", 229}, + {"Restart pos", 230}, {"\ A directory called '.soundtracker' has been created in your\n\ -home directory to store configuration files.\n", 228}, - {"No loop", 229}, - {"PingPong", 230}, - {"8 bits", 231}, - {"16 bits", 232}, - {"Sample Editor", 233}, - {"Volume", 234}, - {"Panning", 235}, - {"Finetune", 236}, - {"SelStart", 237}, - {"SelEnd", 238}, - {"Sel None", 239}, - {"Sel All", 240}, - {"RelNote", 241}, - {"Length: 0", 242}, - {"Load Sample..", 243}, - {"Save WAV..", 244}, - {"Save WAV", 245}, - {"Clear Sample", 246}, - {"Monitor", 247}, - {"Volume Ramp", 248}, - {"Zoom to selection", 249}, - {"Show all", 250}, - {"Zoom in (+50%)", 251}, - {"Zoom out (-50%)", 252}, - {"Reverse", 253}, - {"Cut", 254}, - {"Remove", 255}, - {"Copy", 256}, - {"Paste", 257}, - {"Filter", 258}, - {"Length: %d", 259}, - {"", 260}, - {"Read error.", 261}, - {"Load stereo sample", 262}, +home directory to store configuration files.\n", 231}, + {"No loop", 232}, + {"PingPong", 233}, + {"8 bits", 234}, + {"16 bits", 235}, + {"Sample Editor", 236}, + {"Volume", 237}, + {"Panning", 238}, + {"Finetune", 239}, + {"SelStart", 240}, + {"SelEnd", 241}, + {"Sel None", 242}, + {"Sel All", 243}, + {"RelNote", 244}, + {"Length: 0", 245}, + {"Load Sample...", 246}, + {"Save WAV...", 247}, + {"Save region as WAV...", 248}, + {"Save WAV", 249}, + {"Save Region", 250}, + {"Monitor", 251}, + {"Volume Ramp", 252}, + {"Zoom to selection", 253}, + {"Show all", 254}, + {"Zoom in (+50%)", 255}, + {"Zoom out (-50%)", 256}, + {"Reverse", 257}, + {"Cut", 258}, + {"Remove", 259}, + {"Copy", 260}, + {"Paste", 261}, + {"Clear Sample", 262}, + {"Length: %d", 263}, + {"", 264}, + {"Read error.", 265}, + {"Load stereo sample", 266}, {"\ You have selected a stereo sample!\n\ (SoundTracker can only handle mono samples!)\n\ \n\ -Please choose which channel to load:", 263}, - {"Left", 264}, - {"Mix", 265}, - {"Right", 266}, - {"Can't read sample", 267}, - {"Sample is too long for current mixer module. Loading anyway.", 268}, - {"Can only handle 8 and 16 bit samples with up to 2 channels", 269}, - {"OK", 270}, - {"Start sampling", 271}, - {"Sampling Window", 272}, - {"", 273}, - {"Recorded sample is too long for current mixer module. Using it anyway.", 274}, - {"Normalize", 275}, - {"Execute", 276}, - {"Close", 277}, - {"Volume Ramping", 278}, - {"Perform linear volume fade on Selection", 279}, - {"Left [%]:", 280}, - {"Right [%]:", 281}, - {"SoundTracker Tip of the day", 282}, - {"Previous Tip", 283}, - {"Next Tip", 284}, - {"Show tip next time", 285}, +Please choose which channel to load:", 267}, + {"Left", 268}, + {"Mix", 269}, + {"Right", 270}, + {"Can't read sample", 271}, + {"Sample is too long for current mixer module. Loading anyway.", 272}, + {"Can only handle 8 and 16 bit samples with up to 2 channels", 273}, + {"Nothing to save.", 274}, + {"OK", 275}, + {"Start sampling", 276}, + {"Sampling Window", 277}, + {"", 278}, + {"Recorded sample is too long for current mixer module. Using it anyway.", 279}, + {"Normalize", 280}, + {"Execute", 281}, + {"Close", 282}, + {"Volume Ramping", 283}, + {"Perform linear volume fade on Selection", 284}, + {"Left [%]:", 285}, + {"Right [%]:", 286}, + {"SoundTracker Tip of the day", 287}, + {"Previous Tip", 288}, + {"Next Tip", 289}, + {"Show tip next time", 290}, {"\ Welcome to SoundTracker!\n\ \n\ If you are new to this type of program, you will want to get hold of\n\ -some XM or MOD files first and play with them.", 286}, +some XM or MOD files first and play with them.", 291}, {"\ You can make SoundTracker's edit mode more responsive to keyboard\n\ input by decreasing the mixing buffer size of the \"Editing\" object in\n\ -the Audio Configuration.", 287}, +the Audio Configuration.", 292}, {"\ You can adjust the loop points in the sample editor by holding Shift\n\ -and using the left and right mousebuttons.\n", 288}, +and using the left and right mousebuttons.\n", 293}, {"\ If you want to know more about tracking, and how the various commands\n\ -work, have a look at http://www.united-trackers.org/", 289}, +work, have a look at http://www.united-trackers.org/", 294}, {"\ You can assign samples of an instrument to the individual keys by\n\ activating its sample and then clicking on the keyboard in the\n\ -instrument editor page.", 290}, - {"Jazz Edit:", 291}, - {"Tracker", 292}, - {"Whole Song", 293}, - {"All Patterns", 294}, - {"Current Pattern", 295}, - {"Current Track", 296}, - {"Current Instrument", 297}, - {"All Instruments", 298}, - {"Half note up", 299}, - {"Half note down", 300}, - {"Octave up", 301}, - {"Octave down", 302}, - {"Exchange 1 <-> 2", 303}, - {"Change 1 -> 2", 304}, - {"Transposition Tools", 305}, - {"Scope of the operation:", 306}, - {"Note Transposition", 307}, - {"Instrument Changing", 308}, - {"Instrument 1:", 309}, - {"Current instrument", 310}, - {"Instrument 2:", 311}, - {"Pattern length out of range: %d.\n", 312}, - {"Invalid vibtype %d, using Sine.\n", 313}, - {"File is no XI instrument.", 314}, - {"Unknown XI version 0x%x\n", 315}, - {"No FastTracker XM and no supported MOD format!", 316}, - {"Error while loading patterns.", 317}, - {"Can't open file", 318}, - {"XM header length != 276. Maybe a pre-0.0.12 SoundTracker module? :-)\n", 319}, - {"Error while loading instruments.", 320}, +instrument editor page.", 295}, + {"Jazz Edit:", 296}, + {"Tracker", 297}, + {"Whole Song", 298}, + {"All Patterns", 299}, + {"Current Pattern", 300}, + {"Current Track", 301}, + {"Current Instrument", 302}, + {"All Instruments", 303}, + {"Half note up", 304}, + {"Half note down", 305}, + {"Octave up", 306}, + {"Octave down", 307}, + {"Exchange 1 <-> 2", 308}, + {"Change 1 -> 2", 309}, + {"Transposition Tools", 310}, + {"Scope of the operation:", 311}, + {"Note Transposition", 312}, + {"Instrument Changing", 313}, + {"Instrument 1:", 314}, + {"Current instrument", 315}, + {"Instrument 2:", 316}, + {"Pattern length out of range: %d.\n", 317}, + {"Invalid vibtype %d, using Sine.\n", 318}, + {"File is no XI instrument.", 319}, + {"Unknown XI version 0x%x\n", 320}, + {"No FastTracker XM and no supported MOD format!", 321}, + {"Error while loading patterns.", 322}, + {"Can't open file", 323}, + {"XM header length != 276. Maybe a pre-0.0.12 SoundTracker module? :-)\n", 324}, + {"Error while loading instruments.", 325}, {"\ Module contains sample(s) that are too long for the current mixer.\n\ -Maximum sample length is %d.", 321}, +Maximum sample length is %d.", 326}, }; -int _msg_tbl_length = 321; +int _msg_tbl_length = 326; Binary files soundtracker-0.3.9/po/de.gmo and soundtracker-0.3.10/po/de.gmo differ diff -urN soundtracker-0.3.9/po/de.po soundtracker-0.3.10/po/de.po --- soundtracker-0.3.9/po/de.po Wed Jan 12 20:42:42 2000 +++ soundtracker-0.3.10/po/de.po Wed Jan 26 18:53:27 2000 @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: soundtracker-0.3.3\n" -"POT-Creation-Date: 2000-01-08 12:24+0100\n" +"POT-Creation-Date: 2000-01-22 15:32+0100\n" "PO-Revision-Date: 1999-09-21 23:00+02:00\n" "Last-Translator: Colin Marquardt \n" "Language-Team: German \n" @@ -104,7 +104,7 @@ "Konnte ALSA-Gerät nicht für Soundausgabe öffnen (Karte:%d, Gerät:%d):\n" "%s" -#: app/drivers/esd-output.c:94 +#: app/drivers/esd-output.c:96 msgid "" "Note that the ESD output is unusable in\n" "interactive mode because of the latency added\n" @@ -112,7 +112,7 @@ "for serious work." msgstr "" -#: app/drivers/esd-output.c:159 +#: app/drivers/esd-output.c:161 #, fuzzy, c-format msgid "" "Couldn't connect to ESD for sound output:\n" @@ -125,7 +125,7 @@ msgid "no settings (yet), sorry!" msgstr "Keine Einstellungen (zur Zeit), sorry!" -#: app/drivers/file-output.c:161 app/sample-editor.c:1337 +#: app/drivers/file-output.c:161 app/sample-editor.c:1364 msgid "Can't open file for writing." msgstr "Kann Datei nicht zum Schreiben öffnen." @@ -176,11 +176,11 @@ msgid "Value" msgstr "Wert" -#: app/envelope-box.c:749 +#: app/envelope-box.c:749 app/playlist.c:301 msgid "Insert" msgstr "Einfügen" -#: app/envelope-box.c:755 +#: app/envelope-box.c:755 app/playlist.c:307 msgid "Delete" msgstr "Löschen" @@ -210,11 +210,11 @@ msgid "Loop" msgstr "Loop" -#: app/envelope-box.c:876 app/sample-editor.c:221 +#: app/envelope-box.c:876 app/sample-editor.c:222 msgid "Start" msgstr "Anfang" -#: app/envelope-box.c:877 app/sample-editor.c:222 +#: app/envelope-box.c:877 app/sample-editor.c:223 msgid "End" msgstr "Ende" @@ -232,7 +232,7 @@ msgid "Render WAV" msgstr "" -#: app/file-operations.c:148 app/sample-editor.c:287 +#: app/file-operations.c:148 app/sample-editor.c:290 msgid "Load Sample" msgstr "Lade Sample" @@ -309,7 +309,7 @@ msgid "Question" msgstr "Frage" -#: app/gui-subs.c:447 app/sample-editor.c:1243 app/sample-editor.c:1389 +#: app/gui-subs.c:447 app/sample-editor.c:1277 app/sample-editor.c:1457 msgid "Cancel" msgstr "Abbrechen" @@ -337,55 +337,55 @@ msgid "Are you sure you want to overwrite the file?" msgstr "Sind sie sicher, daß Sie die Datei überschreiben wollen?" -#: app/gui.c:1114 +#: app/gui.c:1119 msgid "Load XM..." msgstr "Lade XM..." -#: app/gui.c:1116 +#: app/gui.c:1121 msgid "Save XM..." msgstr "Speichere XM..." -#: app/gui.c:1119 +#: app/gui.c:1124 msgid "Render module as WAV..." msgstr "" -#: app/gui.c:1171 +#: app/gui.c:1176 msgid "Play Song" msgstr "Spiele Song" -#: app/gui.c:1177 +#: app/gui.c:1182 msgid "Play Pattern" msgstr "Spiele Pattern" -#: app/gui.c:1183 +#: app/gui.c:1188 msgid "Stop" msgstr "Stop" -#: app/gui.c:1202 +#: app/gui.c:1207 msgid "Number of Channels:" msgstr "Anzahl der Kanäle:" -#: app/gui.c:1218 +#: app/gui.c:1223 app/playlist.c:294 msgid "Pattern" msgstr "Pattern" -#: app/gui.c:1234 +#: app/gui.c:1239 msgid "PatLength" msgstr "PatLänge" -#: app/gui.c:1326 +#: app/gui.c:1331 msgid "Octave" msgstr "Oktave" -#: app/gui.c:1334 +#: app/gui.c:1339 msgid "Jump" msgstr "Springe" -#: app/gui.c:1342 +#: app/gui.c:1347 msgid "Instr" msgstr "Instr" -#: app/gui.c:1357 +#: app/gui.c:1362 msgid "Sample" msgstr "Sample" @@ -438,11 +438,13 @@ msgstr "Balance-Hüllkurve" #: app/instrument-editor.c:250 -msgid "Load Instrument.." +#, fuzzy +msgid "Load Instrument..." msgstr "Lade Instrument..." #: app/instrument-editor.c:252 -msgid "Save Instrument.." +#, fuzzy +msgid "Save Instrument..." msgstr "Speichere Instrument..." #: app/instrument-editor.c:254 @@ -471,7 +473,8 @@ "Die Taste, die die spezielle keyoff-Note für FastTracker-Module einfügt." #: app/keys.c:135 -msgid "Upper Octave Keys.." +#, fuzzy +msgid "Upper Octave Keys..." msgstr "Tasten für obere Oktave..." #: app/keys.c:136 @@ -485,7 +488,8 @@ "Art einer Klaviertastatur angeordnet, inklusive der Zifferntasten darüber." #: app/keys.c:142 -msgid "Lower Octave Keys.." +#, fuzzy +msgid "Lower Octave Keys..." msgstr "Taste für untere Oktave..." #: app/keys.c:143 @@ -500,7 +504,8 @@ "inklusive der Tastenreihe darüber." #: app/keys.c:149 -msgid "Other Keys.." +#, fuzzy +msgid "Other Keys..." msgstr "Andere Tasten..." #: app/keys.c:150 @@ -565,11 +570,11 @@ "Bitte verwenden Sie den Dialog für die Tastatur-Konfiguration\n" "im Menü Einstellungen." -#: app/menubar.c:93 +#: app/menubar.c:95 msgid "Ok" msgstr "OK" -#: app/menubar.c:129 +#: app/menubar.c:131 msgid "" "Are you sure you want to do this?\n" "All changes will be lost!" @@ -577,7 +582,7 @@ "Sind Sie sicher, daß Sie das tun wollen?\n" "Alle Änderungen gehen verloren!" -#: app/menubar.c:151 +#: app/menubar.c:153 msgid "" "Are you sure you want to quit?\n" "All changes will be lost!" @@ -585,426 +590,426 @@ "Sind Sie sicher, daß Sie das Programm beenden wollen?\n" "Alle Änderungen gehen verloren!" -#: app/menubar.c:222 +#: app/menubar.c:224 #, fuzzy msgid "_Open..." msgstr "Ö_ffnen..." -#: app/menubar.c:224 +#: app/menubar.c:226 #, fuzzy msgid "Save _as..." msgstr "Speichern _unter..." -#: app/menubar.c:230 +#: app/menubar.c:232 #, fuzzy msgid "Save Module as _WAV..." msgstr "Speichere WAV..." -#: app/menubar.c:235 +#: app/menubar.c:237 msgid "_Quit" msgstr "_Beenden" -#: app/menubar.c:242 +#: app/menubar.c:244 msgid "Clear _All" msgstr "_Alles löschen" -#: app/menubar.c:244 +#: app/menubar.c:246 msgid "Clear _Patterns Only" msgstr "Nur _Pattern löschen" -#: app/menubar.c:246 +#: app/menubar.c:248 msgid "_Optimize Module" msgstr "Modul _optimieren" -#: app/menubar.c:253 app/menubar.c:264 app/menubar.c:282 +#: app/menubar.c:255 app/menubar.c:266 app/menubar.c:284 msgid "C_ut" msgstr "_Ausschneiden" -#: app/menubar.c:255 app/menubar.c:266 app/menubar.c:284 +#: app/menubar.c:257 app/menubar.c:268 app/menubar.c:286 msgid "_Copy" msgstr "_Kopieren" -#: app/menubar.c:257 app/menubar.c:268 app/menubar.c:286 +#: app/menubar.c:259 app/menubar.c:270 app/menubar.c:288 msgid "_Paste" msgstr "E_infügen" -#: app/menubar.c:270 +#: app/menubar.c:272 #, fuzzy msgid "_Insert" msgstr "Einfügen" -#: app/menubar.c:272 +#: app/menubar.c:274 #, fuzzy msgid "_Delete" msgstr "Löschen" -#: app/menubar.c:280 +#: app/menubar.c:282 msgid "_Mark" msgstr "_Markieren" -#: app/menubar.c:293 +#: app/menubar.c:295 msgid "_Jazz Edit Mode" msgstr "_Jazz-Edit-Modus" -#: app/menubar.c:298 +#: app/menubar.c:300 #, fuzzy msgid "Transp_osition..." msgstr "_Transposition..." -#: app/menubar.c:303 app/menubar.c:388 +#: app/menubar.c:305 app/menubar.c:390 msgid "_Pattern" msgstr "_Pattern" -#: app/menubar.c:304 +#: app/menubar.c:306 msgid "_Track" msgstr "_Track" -#: app/menubar.c:305 +#: app/menubar.c:307 msgid "_Selection" msgstr "_Auswahl" -#: app/menubar.c:311 +#: app/menubar.c:313 msgid "_Find Unused Pattern" msgstr "_Finde unbenutztes Pattern" -#: app/menubar.c:313 +#: app/menubar.c:315 msgid "_Copy Current to Unused Pattern" msgstr "_Kopiere aktuelles zu unbenutztem Pattern" -#: app/menubar.c:315 +#: app/menubar.c:317 msgid "C_lear Unused Patterns" msgstr "_Lösche unbenutzte Pattern" -#: app/menubar.c:317 +#: app/menubar.c:319 msgid "_Pack Patterns" msgstr "_Packe Pattern" -#: app/menubar.c:324 +#: app/menubar.c:326 #, fuzzy msgid "_Load XI..." msgstr "_Lade XI..." -#: app/menubar.c:326 +#: app/menubar.c:328 #, fuzzy msgid "_Save XI..." msgstr "Speichere XM..." -#: app/menubar.c:331 +#: app/menubar.c:333 #, fuzzy msgid "_Clear Current" msgstr "Aktuell" -#: app/menubar.c:336 +#: app/menubar.c:338 msgid "_Delete Unused Instruments" msgstr "Lösche unbenutzte _Instrumente" -#: app/menubar.c:344 +#: app/menubar.c:346 msgid "Display _Oscilloscopes" msgstr "Zeige _Oszilloskope" -#: app/menubar.c:346 +#: app/menubar.c:348 msgid "Use _Backing Store" msgstr "Verwende _Backing Store" -#: app/menubar.c:351 +#: app/menubar.c:353 #, fuzzy msgid "_Keyboard Configuration..." msgstr "_Tastatur-Konfiguration..." -#: app/menubar.c:353 +#: app/menubar.c:355 #, fuzzy msgid "_Audio Configuration..." msgstr "_Audio-Konfiguration..." -#: app/menubar.c:355 +#: app/menubar.c:357 #, fuzzy msgid "_Playback Effects..." msgstr "_Playback-Effekte..." -#: app/menubar.c:357 +#: app/menubar.c:359 #, fuzzy msgid "_GUI Configuration..." msgstr "_GUI-Konfiguration..." -#: app/menubar.c:362 +#: app/menubar.c:364 msgid "_Save Settings now" msgstr "_Speichere Einstellungen jetzt" -#: app/menubar.c:364 +#: app/menubar.c:366 msgid "Save Settings on _Exit" msgstr "Speichere Einstellungen beim _Verlassen" -#: app/menubar.c:371 +#: app/menubar.c:373 #, fuzzy msgid "_About..." msgstr "Ü_ber..." -#: app/menubar.c:376 +#: app/menubar.c:378 #, fuzzy msgid "Show _Tips..." msgstr "Zeige _Tips..." -#: app/menubar.c:378 +#: app/menubar.c:380 #, fuzzy msgid "_XM Effects..." msgstr "_XM-Effekte..." -#: app/menubar.c:385 +#: app/menubar.c:387 msgid "_File" msgstr "_Datei" -#: app/menubar.c:386 +#: app/menubar.c:388 msgid "_Module" msgstr "_Modul" -#: app/menubar.c:387 +#: app/menubar.c:389 msgid "_Edit" msgstr "_Bearbeiten" -#: app/menubar.c:389 +#: app/menubar.c:391 msgid "_Instrument" msgstr "_Instrument" -#: app/menubar.c:390 +#: app/menubar.c:392 msgid "_Settings" msgstr "_Einstellungen" -#: app/menubar.c:391 +#: app/menubar.c:393 msgid "_Help" msgstr "_Hilfe" -#: app/menubar.c:421 +#: app/menubar.c:423 msgid "/_File" msgstr "/_Datei" -#: app/menubar.c:422 +#: app/menubar.c:424 #, fuzzy msgid "/File/_Open..." msgstr "/Datei/Ö_ffnen..." -#: app/menubar.c:423 +#: app/menubar.c:425 #, fuzzy msgid "/File/Save _as..." msgstr "/Datei/Speichern _unter..." -#: app/menubar.c:424 app/menubar.c:426 +#: app/menubar.c:426 app/menubar.c:428 msgid "/File/-" msgstr "/Datei/-" -#: app/menubar.c:425 +#: app/menubar.c:427 #, fuzzy msgid "/File/Save Module as _WAV..." msgstr "/Datei/Speichern _unter..." -#: app/menubar.c:427 +#: app/menubar.c:429 msgid "/File/_Quit" msgstr "/Datei/_Beenden" -#: app/menubar.c:428 +#: app/menubar.c:430 msgid "/_Module" msgstr "/_Modul" -#: app/menubar.c:429 +#: app/menubar.c:431 msgid "/Module/Clear _All" msgstr "/Modul/Lösche _alle" -#: app/menubar.c:430 +#: app/menubar.c:432 msgid "/Module/Clear _Patterns Only" msgstr "/Modul/Lösche nur _Pattern" -#: app/menubar.c:431 +#: app/menubar.c:433 msgid "/Module/_Optimize Module" msgstr "/Modul/_Optimiere Modul" -#: app/menubar.c:432 +#: app/menubar.c:434 msgid "/_Edit" msgstr "/_Bearbeiten" -#: app/menubar.c:433 +#: app/menubar.c:435 msgid "/Edit/_Jazz Edit Mode" msgstr "/Bearbeiten/_Jazz-Edit-Mode" -#: app/menubar.c:434 app/menubar.c:436 +#: app/menubar.c:436 app/menubar.c:438 msgid "/Edit/-" msgstr "/Bearbeiten/-" -#: app/menubar.c:435 +#: app/menubar.c:437 #, fuzzy msgid "/Edit/_Transposition..." msgstr "/Bearbeiten/_Transposition..." -#: app/menubar.c:437 +#: app/menubar.c:439 msgid "/Edit/_Pattern" msgstr "/Bearbeiten/_Pattern" -#: app/menubar.c:438 +#: app/menubar.c:440 msgid "/Edit/Pattern/C_ut" msgstr "/Bearbeiten/Pattern/_Ausschneiden" -#: app/menubar.c:439 +#: app/menubar.c:441 msgid "/Edit/Pattern/_Copy" msgstr "/Bearbeiten/Pattern/_Kopieren" -#: app/menubar.c:440 +#: app/menubar.c:442 msgid "/Edit/Pattern/_Paste" msgstr "/Bearbeiten/Pattern/E_infügen" -#: app/menubar.c:441 +#: app/menubar.c:443 msgid "/Edit/_Track" msgstr "/Bearbeiten/_Track" -#: app/menubar.c:442 +#: app/menubar.c:444 msgid "/Edit/Track/C_ut" msgstr "/Bearbeiten/Track/_Ausschneiden" -#: app/menubar.c:443 +#: app/menubar.c:445 msgid "/Edit/Track/_Copy" msgstr "/Bearbeiten/Track/_Kopieren" -#: app/menubar.c:444 +#: app/menubar.c:446 msgid "/Edit/Track/_Paste" msgstr "/Bearbeiten/Track/E_infügen" -#: app/menubar.c:445 +#: app/menubar.c:447 #, fuzzy msgid "/Edit/Track/_Insert" msgstr "/Bearbeiten/Track/E_infügen" -#: app/menubar.c:446 +#: app/menubar.c:448 #, fuzzy msgid "/Edit/Track/_Delete" msgstr "/Bearbeiten/Track/E_infügen" -#: app/menubar.c:447 +#: app/menubar.c:449 msgid "/Edit/_Selection" msgstr "/Bearbeiten/_Auswahl" -#: app/menubar.c:448 +#: app/menubar.c:450 msgid "/Edit/Selection/_Mark" msgstr "/Bearbeiten/Auswahl/_Markieren" -#: app/menubar.c:449 +#: app/menubar.c:451 msgid "/Edit/Selection/C_ut" msgstr "/Bearbeiten/Auswahl/_Ausschneiden" -#: app/menubar.c:450 +#: app/menubar.c:452 msgid "/Edit/Selection/_Copy" msgstr "/Bearbeiten/Auswahl/_Kopieren" -#: app/menubar.c:451 +#: app/menubar.c:453 msgid "/Edit/Selection/_Paste" msgstr "/Bearbeiten/Auswahl/E_infügen" -#: app/menubar.c:452 +#: app/menubar.c:454 msgid "/_Pattern" msgstr "/_Pattern" -#: app/menubar.c:453 +#: app/menubar.c:455 msgid "/Pattern/_Find Unused Pattern" msgstr "/Pattern/_Finde unbenutztes Pattern" -#: app/menubar.c:454 +#: app/menubar.c:456 msgid "/Pattern/_Copy Current to Unused Pattern" msgstr "/Pattern/_Kopiere aktuelles zu unbenutztem Pattern" -#: app/menubar.c:455 +#: app/menubar.c:457 msgid "/Pattern/C_lear Unused Patterns" msgstr "/Pattern/_Lösche unbenutzte Pattern" -#: app/menubar.c:456 +#: app/menubar.c:458 msgid "/Pattern/_Pack Patterns" msgstr "/Pattern/_Packe Pattern" -#: app/menubar.c:457 +#: app/menubar.c:459 msgid "/_Instrument" msgstr "/_Instrument" -#: app/menubar.c:458 +#: app/menubar.c:460 #, fuzzy msgid "/Instrument/_Load XI..." msgstr "/Instrument/_Lade XI..." -#: app/menubar.c:459 +#: app/menubar.c:461 #, fuzzy msgid "/Instrument/_Save XI..." msgstr "/Instrument/_Lade XI..." -#: app/menubar.c:460 app/menubar.c:462 +#: app/menubar.c:462 app/menubar.c:464 msgid "/Instrument/-" msgstr "/Instrument/-" -#: app/menubar.c:461 +#: app/menubar.c:463 #, fuzzy msgid "/Instrument/_Clear Current" msgstr "/Instrument/_Lösche unbenutzte Instrumente" -#: app/menubar.c:463 +#: app/menubar.c:465 msgid "/Instrument/_Delete Unused Instruments" msgstr "/Instrument/_Lösche unbenutzte Instrumente" -#: app/menubar.c:464 +#: app/menubar.c:466 msgid "/_Settings" msgstr "/_Einstellungen" -#: app/menubar.c:465 +#: app/menubar.c:467 msgid "/Settings/Display _Oscilloscopes" msgstr "/Einstellungen/Zeige _Oszilloskope" -#: app/menubar.c:466 +#: app/menubar.c:468 msgid "/Settings/Use _Backing Store" msgstr "/Einstellungen/Verwende _Backing Store" -#: app/menubar.c:467 app/menubar.c:472 +#: app/menubar.c:469 app/menubar.c:474 msgid "/Settings/-" msgstr "/Einstellungen/-" -#: app/menubar.c:468 +#: app/menubar.c:470 #, fuzzy msgid "/Settings/_Keyboard Configuration..." msgstr "/Einstellungen/_Tastatur-Konfiguration..." -#: app/menubar.c:469 +#: app/menubar.c:471 #, fuzzy msgid "/Settings/_Audio Configuration..." msgstr "/Einstellungen/_Audio-Konfiguration..." -#: app/menubar.c:470 +#: app/menubar.c:472 #, fuzzy msgid "/Settings/_Playback Effects..." msgstr "/Einstellungen/_Playback-Effekte..." -#: app/menubar.c:471 +#: app/menubar.c:473 #, fuzzy msgid "/Settings/_GUI Configuration..." msgstr "/Einstellungen/_GUI-Konfiguration..." -#: app/menubar.c:473 +#: app/menubar.c:475 msgid "/Settings/_Save Settings now" msgstr "/Einstellungen/_Speichere Einstellungen jetzt" -#: app/menubar.c:474 +#: app/menubar.c:476 msgid "/Settings/Save Settings on _Exit" msgstr "/Einstellungen/Speichere Einstellungen beim _Verlassen" -#: app/menubar.c:475 +#: app/menubar.c:477 msgid "/_Help" msgstr "/_Hilfe" -#: app/menubar.c:476 +#: app/menubar.c:478 #, fuzzy msgid "/Help/_About..." msgstr "/Hilfe/Ü_ber..." -#: app/menubar.c:477 +#: app/menubar.c:479 msgid "/Help/-" msgstr "/Hilfe/-" -#: app/menubar.c:478 +#: app/menubar.c:480 #, fuzzy msgid "/Help/Show _Tips..." msgstr "/Hilfe/Zeige _Tips..." -#: app/menubar.c:479 +#: app/menubar.c:481 #, fuzzy msgid "/Help/_XM Effects..." msgstr "/Hilfe/_XM-Effekte..." @@ -1025,7 +1030,7 @@ msgid "Linear" msgstr "Linear" -#: app/module-info.c:118 app/sample-editor.c:181 +#: app/module-info.c:118 app/sample-editor.c:182 msgid "Amiga" msgstr "Amiga" @@ -1045,6 +1050,18 @@ msgid "ProTracker Mode" msgstr "ProTracker-Modus" +#: app/playlist.c:292 +msgid "Song length" +msgstr "Song-Länge" + +#: app/playlist.c:293 +msgid "Current pos" +msgstr "Aktuelle Pos" + +#: app/playlist.c:295 +msgid "Restart pos" +msgstr "Restart-Pos" + #: app/preferences.c:58 msgid "" "A directory called '.soundtracker' has been created in your\n" @@ -1053,148 +1070,155 @@ "Ein Verzeichnis namens '.soundtracker' wurde in Ihrem Home-Verzeichnis \n" "angelegt, um Konfigurationsdateien darin zu speichern.\n" -#: app/sample-editor.c:180 +#: app/sample-editor.c:181 msgid "No loop" msgstr "Keine Loop" -#: app/sample-editor.c:182 +#: app/sample-editor.c:183 msgid "PingPong" msgstr "PingPong" -#: app/sample-editor.c:186 +#: app/sample-editor.c:187 msgid "8 bits" msgstr "8 Bits" -#: app/sample-editor.c:187 +#: app/sample-editor.c:188 msgid "16 bits" msgstr "16 Bits" -#: app/sample-editor.c:193 +#: app/sample-editor.c:194 msgid "Sample Editor" msgstr "Sample-Editor" -#: app/sample-editor.c:233 +#: app/sample-editor.c:234 msgid "Volume" msgstr "Lautstärke" -#: app/sample-editor.c:234 +#: app/sample-editor.c:235 msgid "Panning" msgstr "Balance" -#: app/sample-editor.c:235 +#: app/sample-editor.c:236 msgid "Finetune" msgstr "Feineinstellung" -#: app/sample-editor.c:246 +#: app/sample-editor.c:247 msgid "SelStart" msgstr "AuswAnf" -#: app/sample-editor.c:247 +#: app/sample-editor.c:248 msgid "SelEnd" msgstr "AuswEnde" -#: app/sample-editor.c:255 +#: app/sample-editor.c:256 #, fuzzy msgid "Sel None" msgstr "RelNote" -#: app/sample-editor.c:261 +#: app/sample-editor.c:262 msgid "Sel All" msgstr "" -#: app/sample-editor.c:267 +#: app/sample-editor.c:268 msgid "RelNote" msgstr "RelNote" -#: app/sample-editor.c:268 +#: app/sample-editor.c:269 msgid "Length: 0" msgstr "Länge: 0" -#: app/sample-editor.c:281 -msgid "Load Sample.." +#: app/sample-editor.c:282 +#, fuzzy +msgid "Load Sample..." msgstr "Lade Sample..." -#: app/sample-editor.c:283 -msgid "Save WAV.." +#: app/sample-editor.c:284 +#, fuzzy +msgid "Save WAV..." +msgstr "Speichere WAV..." + +#: app/sample-editor.c:286 +#, fuzzy +msgid "Save region as WAV..." msgstr "Speichere WAV..." -#: app/sample-editor.c:296 +#: app/sample-editor.c:299 msgid "Save WAV" msgstr "Speichere WAV" -#: app/sample-editor.c:306 -#, fuzzy -msgid "Clear Sample" -msgstr "Lade Sample" +#: app/sample-editor.c:309 +msgid "Save Region" +msgstr "" -#: app/sample-editor.c:312 +#: app/sample-editor.c:320 msgid "Monitor" msgstr "Monitor" -#: app/sample-editor.c:318 +#: app/sample-editor.c:326 msgid "Volume Ramp" msgstr "Lautstärke" -#: app/sample-editor.c:328 +#: app/sample-editor.c:336 msgid "Zoom to selection" msgstr "Zoom in Auswahl" -#: app/sample-editor.c:334 +#: app/sample-editor.c:342 msgid "Show all" msgstr "Zeige alles" -#: app/sample-editor.c:340 +#: app/sample-editor.c:348 msgid "Zoom in (+50%)" msgstr "Zoom in (+50%)" -#: app/sample-editor.c:346 +#: app/sample-editor.c:354 msgid "Zoom out (-50%)" msgstr "Zoom out (-50%)" -#: app/sample-editor.c:352 +#: app/sample-editor.c:360 #, fuzzy msgid "Reverse" msgstr "Entfernen" -#: app/sample-editor.c:362 +#: app/sample-editor.c:370 msgid "Cut" msgstr "Ausschneiden" -#: app/sample-editor.c:368 +#: app/sample-editor.c:376 msgid "Remove" msgstr "Entfernen" -#: app/sample-editor.c:374 +#: app/sample-editor.c:382 msgid "Copy" msgstr "Kopieren" -#: app/sample-editor.c:380 +#: app/sample-editor.c:388 msgid "Paste" msgstr "Einfügen" -#: app/sample-editor.c:386 -msgid "Filter" -msgstr "Filter" +#: app/sample-editor.c:394 +#, fuzzy +msgid "Clear Sample" +msgstr "Lade Sample" -#: app/sample-editor.c:473 +#: app/sample-editor.c:481 #, c-format msgid "Length: %d" msgstr "Länge: %d" -#: app/sample-editor.c:999 +#: app/sample-editor.c:1033 msgid "" msgstr "" -#: app/sample-editor.c:1083 +#: app/sample-editor.c:1117 msgid "Read error." msgstr "Lesefehler." -#: app/sample-editor.c:1199 +#: app/sample-editor.c:1233 #, fuzzy msgid "Load stereo sample" msgstr "Lade Sample" -#: app/sample-editor.c:1207 +#: app/sample-editor.c:1241 msgid "" "You have selected a stereo sample!\n" "(SoundTracker can only handle mono samples!)\n" @@ -1202,80 +1226,84 @@ "Please choose which channel to load:" msgstr "" -#: app/sample-editor.c:1218 +#: app/sample-editor.c:1252 #, fuzzy msgid "Left" msgstr "Links [%]:" -#: app/sample-editor.c:1224 +#: app/sample-editor.c:1258 msgid "Mix" msgstr "" -#: app/sample-editor.c:1230 +#: app/sample-editor.c:1264 #, fuzzy msgid "Right" msgstr "Rechts [%]:" -#: app/sample-editor.c:1269 +#: app/sample-editor.c:1303 msgid "Can't read sample" msgstr "Kann Sample nicht lesen" -#: app/sample-editor.c:1275 +#: app/sample-editor.c:1309 msgid "Sample is too long for current mixer module. Loading anyway." msgstr "Sample ist zu lang für aktuelles Mixer-Modul. Lade trotzdem." -#: app/sample-editor.c:1289 +#: app/sample-editor.c:1323 #, fuzzy msgid "Can only handle 8 and 16 bit samples with up to 2 channels" msgstr "Kann nur mono- 8 und 16 Bit Samples verarbeiten" -#: app/sample-editor.c:1374 +#: app/sample-editor.c:1415 +msgid "Nothing to save." +msgstr "" + +#: app/sample-editor.c:1442 msgid "OK" msgstr "OK" -#: app/sample-editor.c:1382 +#: app/sample-editor.c:1450 msgid "Start sampling" msgstr "Starte Sampling" -#: app/sample-editor.c:1417 app/sample-editor.c:1420 +#: app/sample-editor.c:1485 app/sample-editor.c:1488 msgid "Sampling Window" msgstr "Sampling-Fenster" -#: app/sample-editor.c:1520 +#: app/sample-editor.c:1588 msgid "" msgstr "" -#: app/sample-editor.c:1550 +#: app/sample-editor.c:1618 msgid "Recorded sample is too long for current mixer module. Using it anyway." msgstr "" "Aufgezeichnetes Sample ist zu lang für aktuelles Mixer-Modul. Verwende es " "trotzdem." -#: app/sample-editor.c:1582 +#: app/sample-editor.c:1650 msgid "Normalize" msgstr "Normalisieren" -#: app/sample-editor.c:1583 +#: app/sample-editor.c:1651 msgid "Execute" msgstr "Ausführen" -#: app/sample-editor.c:1584 app/tips-dialog.c:165 +#: app/sample-editor.c:1652 app/tips-dialog.c:165 msgid "Close" msgstr "Schließen" -#: app/sample-editor.c:1593 app/sample-editor.c:1596 +#: app/sample-editor.c:1661 app/sample-editor.c:1664 msgid "Volume Ramping" msgstr "Lautstärke-Anpassung" -#: app/sample-editor.c:1613 +#: app/sample-editor.c:1681 msgid "Perform linear volume fade on Selection" msgstr "Lineare Lautstärkenverringerung auf Markierung" -#: app/sample-editor.c:1625 +#: app/sample-editor.c:1693 msgid "Left [%]:" msgstr "Links [%]:" -#: app/sample-editor.c:1630 +#: app/sample-editor.c:1698 msgid "Right [%]:" msgstr "Rechts [%]:" @@ -1347,11 +1375,11 @@ "das Sample aktivieren und dann auf die Tastatur im Instrumenten-Editor " "klicken." -#: app/track-editor.c:82 +#: app/track-editor.c:108 msgid "Jazz Edit:" msgstr "Jazz-Edit:" -#: app/track-editor.c:126 +#: app/track-editor.c:147 #, fuzzy msgid "Tracker" msgstr "_Track" @@ -1455,7 +1483,7 @@ msgid "No FastTracker XM and no supported MOD format!" msgstr "Kein FastTracker XM und kein unterstütztes MOD-Format!" -#: app/xm.c:771 app/xm.c:871 +#: app/xm.c:771 app/xm.c:876 msgid "Error while loading patterns." msgstr "Fehler beim Laden der Pattern." @@ -1468,11 +1496,11 @@ msgstr "" "XM-Header-Länge != 276. Vielleicht ein pre-0.0.12 SoundTracker-Modul? :-)\n" -#: app/xm.c:877 +#: app/xm.c:882 msgid "Error while loading instruments." msgstr "Fehler beim Laden der Instrumente." -#: app/xm.c:888 +#: app/xm.c:893 #, c-format msgid "" "Module contains sample(s) that are too long for the current mixer.\n" @@ -1481,6 +1509,9 @@ "Modul enthält Sample(s), die zu lang für den aktuellen Mixer sind..\n" "Maximale Sample-Länge ist %d." +#~ msgid "Filter" +#~ msgstr "Filter" + #~ msgid "Reset Sel" #~ msgstr "Rücks. Ausw" @@ -1498,15 +1529,6 @@ #~ msgid "Resample" #~ msgstr "Neu samplen" - -#~ msgid "Song length" -#~ msgstr "Song-Länge" - -#~ msgid "Current pos" -#~ msgstr "Aktuelle Pos" - -#~ msgid "Restart pos" -#~ msgstr "Restart-Pos" #~ msgid "Saving Instruments not yet supported." #~ msgstr "Speichern von Instrumenten noch nicht unterstützt." Binary files soundtracker-0.3.9/po/ja.gmo and soundtracker-0.3.10/po/ja.gmo differ diff -urN soundtracker-0.3.9/po/ja.po soundtracker-0.3.10/po/ja.po --- soundtracker-0.3.9/po/ja.po Sat Jan 8 12:32:22 2000 +++ soundtracker-0.3.10/po/ja.po Tue Jan 18 16:59:06 2000 @@ -1,19 +1,18 @@ -# ja.po(0.3.8-0) for SoundTracker -# Copyright (C) 1998-1999 Michael Krause . -# Translators: Atsushi Yamagata , 1999. -# Yuuki NINOMIYA , 1999. +# ja.po(0.3.9-1) for SoundTracker +# Copyright (C) 1998-2000 Michael Krause . +# Translators: Atsushi Yamagata , 1999, 2000. +# Yuuki NINOMIYA , 1999, 2000. # #, fuzzy msgid "" msgstr "" -"Project-Id-Version: SoundTracker 0.3.6\n" -"POT-Creation-Date: 1999-12-26 19:38+0100\n" -"PO-Revision-Date: 1999-12-28 11:30+09:00\n" +"Project-Id-Version: SoundTracker 0.3.9\n" +"POT-Creation-Date: 2000-01-08 12:24+0100\n" +"PO-Revision-Date: 2000-01-14 10:14+09:00\n" "Last-Translator: Atsushi Yamagata \n" -"Language-Team: LANGUAGE MIME-Version: 1.0\n" +"MIME-Version: 1.0\n" #: app/audioconfig.c:55 msgid "Playback Output" @@ -35,47 +34,47 @@ msgid "Audio Configuration" msgstr "¥ª¡¼¥Ç¥£¥ªÀßÄê" -#: app/drivers/alsa-input.c:125 app/drivers/alsa-output.c:135 +#: app/drivers/alsa-input.c:125 app/drivers/alsa-output.c:134 #, c-format msgid "(%d bytes)" msgstr "(%d¥Ð¥¤¥È)" -#: app/drivers/alsa-input.c:128 app/drivers/alsa-output.c:138 +#: app/drivers/alsa-input.c:128 app/drivers/alsa-output.c:137 #: app/drivers/oss-output.c:139 #, c-format msgid "Estimated audio delay: %f microseconds" msgstr "¿äÄꥪ¡¼¥Ç¥£¥ª¡¦¥Ç¥£¥ì¥¤: %f¥Þ¥¤¥¯¥íÉÃ" -#: app/drivers/alsa-input.c:193 app/drivers/alsa-output.c:200 +#: app/drivers/alsa-input.c:193 app/drivers/alsa-output.c:199 #: app/drivers/oss-output.c:188 msgid "These changes won't take effect until you restart playing." msgstr "±éÁÕ¤òºÆ³«¤¹¤ë¤Þ¤Ç¤³¤ì¤é¤ÎÊѹ¹¤Ï¤Ê¤µ¤ì¤Þ¤»¤ó¡£" -#: app/drivers/alsa-input.c:205 app/drivers/alsa-output.c:212 +#: app/drivers/alsa-input.c:205 app/drivers/alsa-output.c:211 #: app/drivers/oss-output.c:200 msgid "Resolution:" msgstr "²òÁüÅÙ:" -#: app/drivers/alsa-input.c:215 app/drivers/alsa-output.c:222 +#: app/drivers/alsa-input.c:215 app/drivers/alsa-output.c:221 #: app/drivers/oss-output.c:210 msgid "Channels:" msgstr "¥Á¥ã¥ó¥Í¥ë:" -#: app/drivers/alsa-input.c:225 app/drivers/alsa-output.c:232 +#: app/drivers/alsa-input.c:225 app/drivers/alsa-output.c:231 #: app/drivers/oss-output.c:220 msgid "Frequency [Hz]:" msgstr "¼þÇÈ¿ô [Hz]:" -#: app/drivers/alsa-input.c:235 app/drivers/alsa-output.c:242 +#: app/drivers/alsa-input.c:235 app/drivers/alsa-output.c:241 #: app/drivers/oss-output.c:230 msgid "Buffer Size:" msgstr "¥Ð¥Ã¥Õ¥¡¡¦¥µ¥¤¥º:" -#: app/drivers/alsa-input.c:268 app/drivers/alsa-output.c:275 +#: app/drivers/alsa-input.c:268 app/drivers/alsa-output.c:274 msgid "ALSA card number:" msgstr "ALSA¥«¡¼¥ÉÈÖ¹æ:" -#: app/drivers/alsa-input.c:283 app/drivers/alsa-output.c:290 +#: app/drivers/alsa-input.c:283 app/drivers/alsa-output.c:289 msgid "ALSA device number:" msgstr "ALSA¥Ç¥Ð¥¤¥¹ÈÖ¹æ:" @@ -88,16 +87,16 @@ "¥µ¥¦¥ó¥É½ÐÎϤËÂФ·¤ÆALSA¥Ç¥Ð¥¤¥¹(¥«¡¼¥É:%d¡¢¥Ç¥Ð¥¤¥¹:%d)¤¬³«¤±¤Þ¤»¤ó¤Ç¤·¤¿:\n" "%s" -#: app/drivers/alsa-input.c:426 app/drivers/alsa-output.c:427 +#: app/drivers/alsa-input.c:426 app/drivers/alsa-output.c:426 #: app/drivers/oss-input.c:221 app/drivers/oss-output.c:390 msgid "Required sound output format not supported.\n" msgstr "Í׵ᤵ¤ì¤¿¥µ¥¦¥ó¥É½ÐÎÏ¥Õ¥©¡¼¥Þ¥Ã¥È¤¬¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£\n" -#: app/drivers/alsa-input.c:439 app/drivers/alsa-output.c:442 +#: app/drivers/alsa-input.c:439 app/drivers/alsa-output.c:441 msgid "Required sound output parameters not supported.\n" msgstr "Í׵ᤵ¤ì¤¿¥µ¥¦¥ó¥É½ÐÎÏ¥Õ¥©¡¼¥Þ¥Ã¥È¤¬¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Þ¤»¤ó¡£\n" -#: app/drivers/alsa-output.c:378 +#: app/drivers/alsa-output.c:377 #, c-format msgid "" "Couldn't open ALSA device for sound output (card:%d, device:%d):\n" @@ -131,7 +130,7 @@ msgid "no settings (yet), sorry!" msgstr "¤¹¤ß¤Þ¤»¤ó¡¢(¤Þ¤À)ÀßÄꤵ¤ì¤Æ¤¤¤Þ¤»¤ó!" -#: app/drivers/file-output.c:161 app/sample-editor.c:1313 +#: app/drivers/file-output.c:161 app/sample-editor.c:1337 msgid "Can't open file for writing." msgstr "½ñ¤­¹þ¤ß¤Î¤¿¤á¤Ë¥Õ¥¡¥¤¥ë¤¬³«¤±¤Þ¤»¤ó¡£" @@ -236,7 +235,7 @@ msgid "Render WAV" msgstr "WAV¥ì¥ó¥À" -#: app/file-operations.c:148 app/sample-editor.c:275 +#: app/file-operations.c:148 app/sample-editor.c:287 msgid "Load Sample" msgstr "¥µ¥ó¥×¥ë¡¦¥í¡¼¥É" @@ -308,7 +307,7 @@ msgid "Question" msgstr "¼ÁÌä" -#: app/gui-subs.c:447 app/sample-editor.c:1219 app/sample-editor.c:1365 +#: app/gui-subs.c:447 app/sample-editor.c:1243 app/sample-editor.c:1389 msgid "Cancel" msgstr "¼è¾Ã" @@ -336,55 +335,55 @@ msgid "Are you sure you want to overwrite the file?" msgstr "¥Õ¥¡¥¤¥ë¤ò¾å½ñ¤­¤·¤¿¤¤¤Î¤Ï³Î¤«¤Ç¤¹¤«?" -#: app/gui.c:1113 +#: app/gui.c:1114 msgid "Load XM..." msgstr "XM¥í¡¼¥É..." -#: app/gui.c:1115 +#: app/gui.c:1116 msgid "Save XM..." msgstr "XMÊݸ..." -#: app/gui.c:1118 +#: app/gui.c:1119 msgid "Render module as WAV..." msgstr "WAV¤È¤·¤Æ¥â¥¸¥å¡¼¥ë¤ò¥ì¥ó¥À¥ê¥ó¥°¤¹¤ë..." -#: app/gui.c:1170 +#: app/gui.c:1171 msgid "Play Song" msgstr "¶ÊºÆÀ¸" -#: app/gui.c:1176 +#: app/gui.c:1177 msgid "Play Pattern" msgstr "¥Ñ¥¿¡¼¥óºÆÀ¸" -#: app/gui.c:1182 +#: app/gui.c:1183 msgid "Stop" msgstr "Ää»ß" -#: app/gui.c:1201 +#: app/gui.c:1202 msgid "Number of Channels:" msgstr "¥Á¥ã¥ó¥Í¥ë¿ô:" -#: app/gui.c:1217 +#: app/gui.c:1218 msgid "Pattern" msgstr "¥Ñ¥¿¡¼¥ó" -#: app/gui.c:1233 +#: app/gui.c:1234 msgid "PatLength" msgstr "¥Ñ¥¿¡¼¥óĹ" -#: app/gui.c:1325 +#: app/gui.c:1326 msgid "Octave" msgstr "¥ª¥¯¥¿¡¼¥Ö" -#: app/gui.c:1333 +#: app/gui.c:1334 msgid "Jump" msgstr "¥¸¥ã¥ó¥×" -#: app/gui.c:1341 +#: app/gui.c:1342 msgid "Instr" msgstr "³Ú´ï" -#: app/gui.c:1356 +#: app/gui.c:1357 msgid "Sample" msgstr "¥µ¥ó¥×¥ë" @@ -502,39 +501,39 @@ msgid "Various other keys" msgstr "¾¤Î³Æ¼ï¥­¡¼" -#: app/keys.c:433 +#: app/keys.c:437 msgid "Function" msgstr "µ¡Ç½" -#: app/keys.c:434 +#: app/keys.c:438 msgid "Assignment" msgstr "³äÅö" -#: app/keys.c:443 app/keys.c:446 +#: app/keys.c:447 app/keys.c:450 msgid "Keyboard Configuration" msgstr "¥­¡¼¥Ü¡¼¥ÉÀßÄê" -#: app/keys.c:491 +#: app/keys.c:495 msgid "Key Group Explanation" msgstr "¥­¡¼¡¦¥°¥ë¡¼¥×ÀâÌÀ" -#: app/keys.c:508 +#: app/keys.c:512 msgid "Key Explanation" msgstr "¥­¡¼ÀâÌÀ" -#: app/keys.c:539 +#: app/keys.c:543 msgid "Modifiers:" msgstr "¥â¥Ç¥£¥Õ¥¡¥¤¥¢" -#: app/keys.c:565 +#: app/keys.c:569 msgid "Learn selected key" msgstr "ÁªÂò¤µ¤ì¤¿¥­¡¼¤ò³Ð¤¨¤ë" -#: app/keys.c:571 +#: app/keys.c:575 msgid "Learn all keys" msgstr "Á´¤Æ¤Î¥­¡¼¤ò³Ð¤¨¤ë" -#: app/keys.c:577 +#: app/keys.c:581 msgid "" "Please press the desired key combination!\n" "Click into left list to cancel" @@ -542,7 +541,7 @@ "¤ªË¾¤ß¤ÎÁȹ礻¤Î¥­¡¼¤ò²¡¤·¤Æ¤¯¤À¤µ¤¤!\n" "¼è¾Ã¤¹¤Ë¤Ïº¸¤Î°ìÍ÷¤Ç¥¯¥ê¥Ã¥¯¤·¤Æ¤¯¤À¤µ¤¤" -#: app/keys.c:641 +#: app/keys.c:645 msgid "" "The keyboard configuration file is defective.\n" "Please use the Keyboard Configuration dialog." @@ -550,7 +549,7 @@ "¥­¡¼¥Ü¡¼¥ÉÀßÄê¥Õ¥¡¥¤¥ë¤¬ÉÔ´°Á´¤Ç¤¹¡£\n" "¥­¡¼¥Ü¡¼¥ÉÀßÄê¥À¥¤¥¢¥í¥°¤ò»ÈÍѤ·¤Æ¤¯¤À¤µ¤¤¡£" -#: app/keys.c:851 +#: app/keys.c:895 msgid "" "Automatic key configuration unsuccessful.\n" "Please use the Keyboard Configuration dialog\n" @@ -754,7 +753,7 @@ #: app/menubar.c:421 msgid "/_File" -msgstr "/¥Õ¥¡¥¤¥ë(_F)" +msgstr "/¥Õ¥¡¥¤¥ë" #: app/menubar.c:422 msgid "/File/_Open..." @@ -778,7 +777,7 @@ #: app/menubar.c:428 msgid "/_Module" -msgstr "/¥â¥¸¥å¡¼¥ë(_M)" +msgstr "/¥â¥¸¥å¡¼¥ë" #: app/menubar.c:429 msgid "/Module/Clear _All" @@ -794,7 +793,7 @@ #: app/menubar.c:432 msgid "/_Edit" -msgstr "/ÊÔ½¸(_E)" +msgstr "/ÊÔ½¸" #: app/menubar.c:433 msgid "/Edit/_Jazz Edit Mode" @@ -810,7 +809,7 @@ #: app/menubar.c:437 msgid "/Edit/_Pattern" -msgstr "/ÊÔ½¸/¥Ñ¥¿¡¼¥ó(_P)" +msgstr "/ÊÔ½¸/¥Ñ¥¿¡¼¥ó" #: app/menubar.c:438 msgid "/Edit/Pattern/C_ut" @@ -826,7 +825,7 @@ #: app/menubar.c:441 msgid "/Edit/_Track" -msgstr "/ÊÔ½¸/¥È¥é¥Ã¥¯(_T)" +msgstr "/ÊÔ½¸/¥È¥é¥Ã¥¯" #: app/menubar.c:442 msgid "/Edit/Track/C_ut" @@ -850,7 +849,7 @@ #: app/menubar.c:447 msgid "/Edit/_Selection" -msgstr "/ÊÔ½¸/ÁªÂò(_S)" +msgstr "/ÊÔ½¸/ÁªÂò" #: app/menubar.c:448 msgid "/Edit/Selection/_Mark" @@ -870,7 +869,7 @@ #: app/menubar.c:452 msgid "/_Pattern" -msgstr "/¥Ñ¥¿¡¼¥ó(_P)" +msgstr "/¥Ñ¥¿¡¼¥ó" #: app/menubar.c:453 msgid "/Pattern/_Find Unused Pattern" @@ -890,7 +889,7 @@ #: app/menubar.c:457 msgid "/_Instrument" -msgstr "/³Ú´ï(_I)" +msgstr "/³Ú´ï" #: app/menubar.c:458 msgid "/Instrument/_Load XI..." @@ -914,7 +913,7 @@ #: app/menubar.c:464 msgid "/_Settings" -msgstr "/ÀßÄê(_S)" +msgstr "/ÀßÄê" #: app/menubar.c:465 msgid "/Settings/Display _Oscilloscopes" @@ -972,6 +971,18 @@ msgid "/Help/_XM Effects..." msgstr "/¥Ø¥ë¥×/_XM¸ú²Ì..." +#: app/menubar.c:494 +msgid "/Settings/Display Oscilloscopes" +msgstr "/ÀßÄê/¥ª¥·¥í¥¹¥³¡¼¥×ɽ¼¨(O)" + +#: app/menubar.c:495 +msgid "/Settings/Use Backing Store" +msgstr "/ÀßÄê/¥Ð¥Ã¥­¥ó¥°¡¦¥¹¥È¥¢»ÈÍÑ(B)" + +#: app/menubar.c:496 +msgid "/Settings/Save Settings on Exit" +msgstr "/ÀßÄê/½ªÎ»»þ¤ËÀßÄê¤òÊݸ(E)" + #: app/module-info.c:116 msgid "Instrument Name" msgstr "³Ú´ï̾" @@ -1056,100 +1067,104 @@ msgid "SelEnd" msgstr "ÁªÂò½ªÅÀ" -#: app/sample-editor.c:250 -msgid "Reset Sel" -msgstr "ÁªÂò¥ê¥»¥Ã¥È" - #: app/sample-editor.c:255 +msgid "Sel None" +msgstr "̵ÁªÂò" + +#: app/sample-editor.c:261 +msgid "Sel All" +msgstr "Á´ÁªÂò" + +#: app/sample-editor.c:267 msgid "RelNote" msgstr "Relnote" -#: app/sample-editor.c:256 +#: app/sample-editor.c:268 msgid "Length: 0" msgstr "Ťµ: 0" -#: app/sample-editor.c:269 +#: app/sample-editor.c:281 msgid "Load Sample.." msgstr "¥µ¥ó¥×¥ë¡¦¥í¡¼¥É.." -#: app/sample-editor.c:271 +#: app/sample-editor.c:283 msgid "Save WAV.." msgstr "WAVÊݸ.." -#: app/sample-editor.c:284 +#: app/sample-editor.c:296 msgid "Save WAV" msgstr "WAVÊݸ" -#: app/sample-editor.c:294 -msgid "Clear" -msgstr "¾Ãµî" +#: app/sample-editor.c:306 +msgid "Clear Sample" +msgstr "¥µ¥ó¥×¥ë¾Ãµî" -#: app/sample-editor.c:300 +#: app/sample-editor.c:312 msgid "Monitor" msgstr "¥â¥Ë¥¿" -#: app/sample-editor.c:306 +#: app/sample-editor.c:318 msgid "Volume Ramp" msgstr "Volume Ramp" -#: app/sample-editor.c:316 +#: app/sample-editor.c:328 msgid "Zoom to selection" msgstr "ÁªÂòÉôʬ³ÈÂç" -#: app/sample-editor.c:322 +#: app/sample-editor.c:334 msgid "Show all" msgstr "Á´¤ÆÉ½¼¨" -#: app/sample-editor.c:328 +#: app/sample-editor.c:340 msgid "Zoom in (+50%)" msgstr "³ÈÂç(+50%)" -#: app/sample-editor.c:334 +#: app/sample-editor.c:346 msgid "Zoom out (-50%)" msgstr "½Ì¾®(-50%)" -#: app/sample-editor.c:340 +#: app/sample-editor.c:352 msgid "Reverse" msgstr "¥ê¥Ð¡¼¥¹" -#: app/sample-editor.c:350 +#: app/sample-editor.c:362 msgid "Cut" msgstr "ÀÚ¼è" -#: app/sample-editor.c:356 +#: app/sample-editor.c:368 msgid "Remove" msgstr "°Üư" -#: app/sample-editor.c:362 +#: app/sample-editor.c:374 msgid "Copy" msgstr "¥³¥Ô¡¼" -#: app/sample-editor.c:368 +#: app/sample-editor.c:380 msgid "Paste" msgstr "ŽÉÕ" -#: app/sample-editor.c:374 +#: app/sample-editor.c:386 msgid "Filter" msgstr "¥Õ¥£¥ë¥¿" -#: app/sample-editor.c:475 +#: app/sample-editor.c:473 #, c-format msgid "Length: %d" msgstr "Ťµ: %d" -#: app/sample-editor.c:975 +#: app/sample-editor.c:999 msgid "" msgstr "<º£Å½ÉÕ¤±¤µ¤ì¤Þ¤·¤¿>" -#: app/sample-editor.c:1059 +#: app/sample-editor.c:1083 msgid "Read error." msgstr "ÆÉ¤ß¹þ¤ß¥¨¥é¡¼¡£" -#: app/sample-editor.c:1175 +#: app/sample-editor.c:1199 msgid "Load stereo sample" msgstr "¥¹¥Æ¥ì¥ª¡¦¥µ¥ó¥×¥ë¡¦¥í¡¼¥É" -#: app/sample-editor.c:1183 +#: app/sample-editor.c:1207 msgid "" "You have selected a stereo sample!\n" "(SoundTracker can only handle mono samples!)\n" @@ -1161,79 +1176,79 @@ "\n" "¥í¡¼¥É¤¹¤ë¤¿¤á¤Î¥Á¥ã¥ó¥Í¥ë¤òÁª¤ó¤Ç¤¯¤À¤µ¤¤:" -#: app/sample-editor.c:1194 +#: app/sample-editor.c:1218 msgid "Left" msgstr "º¸" -#: app/sample-editor.c:1200 +#: app/sample-editor.c:1224 msgid "Mix" msgstr "¥ß¥Ã¥¯¥¹" -#: app/sample-editor.c:1206 +#: app/sample-editor.c:1230 msgid "Right" msgstr "±¦" -#: app/sample-editor.c:1245 +#: app/sample-editor.c:1269 msgid "Can't read sample" msgstr "¥µ¥ó¥×¥ë¤¬ÆÉ¤ß¹þ¤á¤Þ¤»¤ó" -#: app/sample-editor.c:1251 +#: app/sample-editor.c:1275 msgid "Sample is too long for current mixer module. Loading anyway." msgstr "" "¥µ¥ó¥×¥ë¤¬¸½ºß¤Î¥ß¥­¥µ¡¦¥â¥¸¥å¡¼¥ë¤Ë¤ÏĹ²á¤®¤Þ¤¹¡£\n" "¤È¤Ë¤«¤¯¥í¡¼¥É¤·¤Þ¤¹¡£" -#: app/sample-editor.c:1265 +#: app/sample-editor.c:1289 msgid "Can only handle 8 and 16 bit samples with up to 2 channels" msgstr "2¥Á¥ã¥ó¥Í¥ë¤Þ¤Ç¤Ç 8¡¢16¥Ó¥Ã¥È¡¦¥µ¥ó¥×¥ë¤Î¤ß½èÍý¤Ç¤­¤Þ¤¹" -#: app/sample-editor.c:1350 +#: app/sample-editor.c:1374 msgid "OK" msgstr "λ²ò" -#: app/sample-editor.c:1358 +#: app/sample-editor.c:1382 msgid "Start sampling" msgstr "¥µ¥ó¥×¥ê¥ó¥°³«»Ï" -#: app/sample-editor.c:1393 app/sample-editor.c:1396 +#: app/sample-editor.c:1417 app/sample-editor.c:1420 msgid "Sampling Window" msgstr "¥µ¥ó¥×¥ê¥ó¥°¡¦¥¦¥£¥ó¥É¥¦" -#: app/sample-editor.c:1496 +#: app/sample-editor.c:1520 msgid "" msgstr "<º£¥µ¥ó¥×¥ê¥ó¥°¤·¤Þ¤·¤¿>" -#: app/sample-editor.c:1526 +#: app/sample-editor.c:1550 msgid "Recorded sample is too long for current mixer module. Using it anyway." msgstr "" "Ï¿²»¤·¤¿¥µ¥ó¥×¥ë¤¬¸½ºß¤Î¥ß¥­¥µ¡¦¥â¥¸¥å¡¼¥ë¤Ë¤ÏĹ²á¤®¤Þ¤¹¡£\n" "¤È¤Ë¤«¤¯¤½¤ì¤ò»È¤¤¤Þ¤¹¡£" -#: app/sample-editor.c:1558 +#: app/sample-editor.c:1582 msgid "Normalize" msgstr "µ¬³Ê²½" -#: app/sample-editor.c:1559 +#: app/sample-editor.c:1583 msgid "Execute" msgstr "¼Â¹Ô" -#: app/sample-editor.c:1560 app/tips-dialog.c:165 +#: app/sample-editor.c:1584 app/tips-dialog.c:165 msgid "Close" msgstr "ÊĤ¸¤ë" -#: app/sample-editor.c:1569 app/sample-editor.c:1572 +#: app/sample-editor.c:1593 app/sample-editor.c:1596 msgid "Volume Ramping" msgstr "Volume Ramping" -#: app/sample-editor.c:1589 +#: app/sample-editor.c:1613 msgid "Perform linear volume fade on Selection" msgstr "ÁªÂò»þ¤Ë²»Î̤òÀþ·¿¤Ë¥Õ¥§¡¼¥É¤¹¤ë" -#: app/sample-editor.c:1601 +#: app/sample-editor.c:1625 msgid "Left [%]:" msgstr "º¸ [%]:" -#: app/sample-editor.c:1606 +#: app/sample-editor.c:1630 msgid "Right [%]:" msgstr "±¦ [%]:" @@ -1434,3 +1449,4 @@ msgstr "" "¥â¥¸¥å¡¼¥ë¤¬¸½ºß¤Î¥ß¥­¥µ¡¦¥â¥¸¥å¡¼¥ë¤Ë¤ÏĹ²á¤®¤ë¥µ¥ó¥×¥ë¤ò´Þ¤ó¤Ç¤¤¤Þ¤¹¡£\n" "¥µ¥ó¥×¥ë¤ÎºÇÂçŤÏ%d¤Ç¤¹¡£" + diff -urN soundtracker-0.3.9/po/soundtracker.pot soundtracker-0.3.10/po/soundtracker.pot --- soundtracker-0.3.9/po/soundtracker.pot Wed Jan 12 20:30:11 2000 +++ soundtracker-0.3.10/po/soundtracker.pot Sat Jan 22 15:32:38 2000 @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" -"POT-Creation-Date: 2000-01-08 12:24+0100\n" +"POT-Creation-Date: 2000-01-22 15:32+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -101,7 +101,7 @@ "%s" msgstr "" -#: app/drivers/esd-output.c:94 +#: app/drivers/esd-output.c:96 msgid "" "Note that the ESD output is unusable in\n" "interactive mode because of the latency added\n" @@ -109,7 +109,7 @@ "for serious work." msgstr "" -#: app/drivers/esd-output.c:159 +#: app/drivers/esd-output.c:161 #, c-format msgid "" "Couldn't connect to ESD for sound output:\n" @@ -120,7 +120,7 @@ msgid "no settings (yet), sorry!" msgstr "" -#: app/drivers/file-output.c:161 app/sample-editor.c:1337 +#: app/drivers/file-output.c:161 app/sample-editor.c:1364 msgid "Can't open file for writing." msgstr "" @@ -167,11 +167,11 @@ msgid "Value" msgstr "" -#: app/envelope-box.c:749 +#: app/envelope-box.c:749 app/playlist.c:301 msgid "Insert" msgstr "" -#: app/envelope-box.c:755 +#: app/envelope-box.c:755 app/playlist.c:307 msgid "Delete" msgstr "" @@ -196,11 +196,11 @@ msgid "Loop" msgstr "" -#: app/envelope-box.c:876 app/sample-editor.c:221 +#: app/envelope-box.c:876 app/sample-editor.c:222 msgid "Start" msgstr "" -#: app/envelope-box.c:877 app/sample-editor.c:222 +#: app/envelope-box.c:877 app/sample-editor.c:223 msgid "End" msgstr "" @@ -216,7 +216,7 @@ msgid "Render WAV" msgstr "" -#: app/file-operations.c:148 app/sample-editor.c:287 +#: app/file-operations.c:148 app/sample-editor.c:290 msgid "Load Sample" msgstr "" @@ -288,7 +288,7 @@ msgid "Question" msgstr "" -#: app/gui-subs.c:447 app/sample-editor.c:1243 app/sample-editor.c:1389 +#: app/gui-subs.c:447 app/sample-editor.c:1277 app/sample-editor.c:1457 msgid "Cancel" msgstr "" @@ -314,55 +314,55 @@ msgid "Are you sure you want to overwrite the file?" msgstr "" -#: app/gui.c:1114 +#: app/gui.c:1119 msgid "Load XM..." msgstr "" -#: app/gui.c:1116 +#: app/gui.c:1121 msgid "Save XM..." msgstr "" -#: app/gui.c:1119 +#: app/gui.c:1124 msgid "Render module as WAV..." msgstr "" -#: app/gui.c:1171 +#: app/gui.c:1176 msgid "Play Song" msgstr "" -#: app/gui.c:1177 +#: app/gui.c:1182 msgid "Play Pattern" msgstr "" -#: app/gui.c:1183 +#: app/gui.c:1188 msgid "Stop" msgstr "" -#: app/gui.c:1202 +#: app/gui.c:1207 msgid "Number of Channels:" msgstr "" -#: app/gui.c:1218 +#: app/gui.c:1223 app/playlist.c:294 msgid "Pattern" msgstr "" -#: app/gui.c:1234 +#: app/gui.c:1239 msgid "PatLength" msgstr "" -#: app/gui.c:1326 +#: app/gui.c:1331 msgid "Octave" msgstr "" -#: app/gui.c:1334 +#: app/gui.c:1339 msgid "Jump" msgstr "" -#: app/gui.c:1342 +#: app/gui.c:1347 msgid "Instr" msgstr "" -#: app/gui.c:1357 +#: app/gui.c:1362 msgid "Sample" msgstr "" @@ -415,11 +415,11 @@ msgstr "" #: app/instrument-editor.c:250 -msgid "Load Instrument.." +msgid "Load Instrument..." msgstr "" #: app/instrument-editor.c:252 -msgid "Save Instrument.." +msgid "Save Instrument..." msgstr "" #: app/instrument-editor.c:254 @@ -447,7 +447,7 @@ msgstr "" #: app/keys.c:135 -msgid "Upper Octave Keys.." +msgid "Upper Octave Keys..." msgstr "" #: app/keys.c:136 @@ -458,7 +458,7 @@ msgstr "" #: app/keys.c:142 -msgid "Lower Octave Keys.." +msgid "Lower Octave Keys..." msgstr "" #: app/keys.c:143 @@ -469,7 +469,7 @@ msgstr "" #: app/keys.c:149 -msgid "Other Keys.." +msgid "Other Keys..." msgstr "" #: app/keys.c:150 @@ -527,411 +527,411 @@ "in the Settings menu." msgstr "" -#: app/menubar.c:93 +#: app/menubar.c:95 msgid "Ok" msgstr "" -#: app/menubar.c:129 +#: app/menubar.c:131 msgid "" "Are you sure you want to do this?\n" "All changes will be lost!" msgstr "" -#: app/menubar.c:151 +#: app/menubar.c:153 msgid "" "Are you sure you want to quit?\n" "All changes will be lost!" msgstr "" -#: app/menubar.c:222 +#: app/menubar.c:224 msgid "_Open..." msgstr "" -#: app/menubar.c:224 +#: app/menubar.c:226 msgid "Save _as..." msgstr "" -#: app/menubar.c:230 +#: app/menubar.c:232 msgid "Save Module as _WAV..." msgstr "" -#: app/menubar.c:235 +#: app/menubar.c:237 msgid "_Quit" msgstr "" -#: app/menubar.c:242 +#: app/menubar.c:244 msgid "Clear _All" msgstr "" -#: app/menubar.c:244 +#: app/menubar.c:246 msgid "Clear _Patterns Only" msgstr "" -#: app/menubar.c:246 +#: app/menubar.c:248 msgid "_Optimize Module" msgstr "" -#: app/menubar.c:253 app/menubar.c:264 app/menubar.c:282 +#: app/menubar.c:255 app/menubar.c:266 app/menubar.c:284 msgid "C_ut" msgstr "" -#: app/menubar.c:255 app/menubar.c:266 app/menubar.c:284 +#: app/menubar.c:257 app/menubar.c:268 app/menubar.c:286 msgid "_Copy" msgstr "" -#: app/menubar.c:257 app/menubar.c:268 app/menubar.c:286 +#: app/menubar.c:259 app/menubar.c:270 app/menubar.c:288 msgid "_Paste" msgstr "" -#: app/menubar.c:270 +#: app/menubar.c:272 msgid "_Insert" msgstr "" -#: app/menubar.c:272 +#: app/menubar.c:274 msgid "_Delete" msgstr "" -#: app/menubar.c:280 +#: app/menubar.c:282 msgid "_Mark" msgstr "" -#: app/menubar.c:293 +#: app/menubar.c:295 msgid "_Jazz Edit Mode" msgstr "" -#: app/menubar.c:298 +#: app/menubar.c:300 msgid "Transp_osition..." msgstr "" -#: app/menubar.c:303 app/menubar.c:388 +#: app/menubar.c:305 app/menubar.c:390 msgid "_Pattern" msgstr "" -#: app/menubar.c:304 +#: app/menubar.c:306 msgid "_Track" msgstr "" -#: app/menubar.c:305 +#: app/menubar.c:307 msgid "_Selection" msgstr "" -#: app/menubar.c:311 +#: app/menubar.c:313 msgid "_Find Unused Pattern" msgstr "" -#: app/menubar.c:313 +#: app/menubar.c:315 msgid "_Copy Current to Unused Pattern" msgstr "" -#: app/menubar.c:315 +#: app/menubar.c:317 msgid "C_lear Unused Patterns" msgstr "" -#: app/menubar.c:317 +#: app/menubar.c:319 msgid "_Pack Patterns" msgstr "" -#: app/menubar.c:324 +#: app/menubar.c:326 msgid "_Load XI..." msgstr "" -#: app/menubar.c:326 +#: app/menubar.c:328 msgid "_Save XI..." msgstr "" -#: app/menubar.c:331 +#: app/menubar.c:333 msgid "_Clear Current" msgstr "" -#: app/menubar.c:336 +#: app/menubar.c:338 msgid "_Delete Unused Instruments" msgstr "" -#: app/menubar.c:344 +#: app/menubar.c:346 msgid "Display _Oscilloscopes" msgstr "" -#: app/menubar.c:346 +#: app/menubar.c:348 msgid "Use _Backing Store" msgstr "" -#: app/menubar.c:351 +#: app/menubar.c:353 msgid "_Keyboard Configuration..." msgstr "" -#: app/menubar.c:353 +#: app/menubar.c:355 msgid "_Audio Configuration..." msgstr "" -#: app/menubar.c:355 +#: app/menubar.c:357 msgid "_Playback Effects..." msgstr "" -#: app/menubar.c:357 +#: app/menubar.c:359 msgid "_GUI Configuration..." msgstr "" -#: app/menubar.c:362 +#: app/menubar.c:364 msgid "_Save Settings now" msgstr "" -#: app/menubar.c:364 +#: app/menubar.c:366 msgid "Save Settings on _Exit" msgstr "" -#: app/menubar.c:371 +#: app/menubar.c:373 msgid "_About..." msgstr "" -#: app/menubar.c:376 +#: app/menubar.c:378 msgid "Show _Tips..." msgstr "" -#: app/menubar.c:378 +#: app/menubar.c:380 msgid "_XM Effects..." msgstr "" -#: app/menubar.c:385 +#: app/menubar.c:387 msgid "_File" msgstr "" -#: app/menubar.c:386 +#: app/menubar.c:388 msgid "_Module" msgstr "" -#: app/menubar.c:387 +#: app/menubar.c:389 msgid "_Edit" msgstr "" -#: app/menubar.c:389 +#: app/menubar.c:391 msgid "_Instrument" msgstr "" -#: app/menubar.c:390 +#: app/menubar.c:392 msgid "_Settings" msgstr "" -#: app/menubar.c:391 +#: app/menubar.c:393 msgid "_Help" msgstr "" -#: app/menubar.c:421 +#: app/menubar.c:423 msgid "/_File" msgstr "" -#: app/menubar.c:422 +#: app/menubar.c:424 msgid "/File/_Open..." msgstr "" -#: app/menubar.c:423 +#: app/menubar.c:425 msgid "/File/Save _as..." msgstr "" -#: app/menubar.c:424 app/menubar.c:426 +#: app/menubar.c:426 app/menubar.c:428 msgid "/File/-" msgstr "" -#: app/menubar.c:425 +#: app/menubar.c:427 msgid "/File/Save Module as _WAV..." msgstr "" -#: app/menubar.c:427 +#: app/menubar.c:429 msgid "/File/_Quit" msgstr "" -#: app/menubar.c:428 +#: app/menubar.c:430 msgid "/_Module" msgstr "" -#: app/menubar.c:429 +#: app/menubar.c:431 msgid "/Module/Clear _All" msgstr "" -#: app/menubar.c:430 +#: app/menubar.c:432 msgid "/Module/Clear _Patterns Only" msgstr "" -#: app/menubar.c:431 +#: app/menubar.c:433 msgid "/Module/_Optimize Module" msgstr "" -#: app/menubar.c:432 +#: app/menubar.c:434 msgid "/_Edit" msgstr "" -#: app/menubar.c:433 +#: app/menubar.c:435 msgid "/Edit/_Jazz Edit Mode" msgstr "" -#: app/menubar.c:434 app/menubar.c:436 +#: app/menubar.c:436 app/menubar.c:438 msgid "/Edit/-" msgstr "" -#: app/menubar.c:435 +#: app/menubar.c:437 msgid "/Edit/_Transposition..." msgstr "" -#: app/menubar.c:437 +#: app/menubar.c:439 msgid "/Edit/_Pattern" msgstr "" -#: app/menubar.c:438 +#: app/menubar.c:440 msgid "/Edit/Pattern/C_ut" msgstr "" -#: app/menubar.c:439 +#: app/menubar.c:441 msgid "/Edit/Pattern/_Copy" msgstr "" -#: app/menubar.c:440 +#: app/menubar.c:442 msgid "/Edit/Pattern/_Paste" msgstr "" -#: app/menubar.c:441 +#: app/menubar.c:443 msgid "/Edit/_Track" msgstr "" -#: app/menubar.c:442 +#: app/menubar.c:444 msgid "/Edit/Track/C_ut" msgstr "" -#: app/menubar.c:443 +#: app/menubar.c:445 msgid "/Edit/Track/_Copy" msgstr "" -#: app/menubar.c:444 +#: app/menubar.c:446 msgid "/Edit/Track/_Paste" msgstr "" -#: app/menubar.c:445 +#: app/menubar.c:447 msgid "/Edit/Track/_Insert" msgstr "" -#: app/menubar.c:446 +#: app/menubar.c:448 msgid "/Edit/Track/_Delete" msgstr "" -#: app/menubar.c:447 +#: app/menubar.c:449 msgid "/Edit/_Selection" msgstr "" -#: app/menubar.c:448 +#: app/menubar.c:450 msgid "/Edit/Selection/_Mark" msgstr "" -#: app/menubar.c:449 +#: app/menubar.c:451 msgid "/Edit/Selection/C_ut" msgstr "" -#: app/menubar.c:450 +#: app/menubar.c:452 msgid "/Edit/Selection/_Copy" msgstr "" -#: app/menubar.c:451 +#: app/menubar.c:453 msgid "/Edit/Selection/_Paste" msgstr "" -#: app/menubar.c:452 +#: app/menubar.c:454 msgid "/_Pattern" msgstr "" -#: app/menubar.c:453 +#: app/menubar.c:455 msgid "/Pattern/_Find Unused Pattern" msgstr "" -#: app/menubar.c:454 +#: app/menubar.c:456 msgid "/Pattern/_Copy Current to Unused Pattern" msgstr "" -#: app/menubar.c:455 +#: app/menubar.c:457 msgid "/Pattern/C_lear Unused Patterns" msgstr "" -#: app/menubar.c:456 +#: app/menubar.c:458 msgid "/Pattern/_Pack Patterns" msgstr "" -#: app/menubar.c:457 +#: app/menubar.c:459 msgid "/_Instrument" msgstr "" -#: app/menubar.c:458 +#: app/menubar.c:460 msgid "/Instrument/_Load XI..." msgstr "" -#: app/menubar.c:459 +#: app/menubar.c:461 msgid "/Instrument/_Save XI..." msgstr "" -#: app/menubar.c:460 app/menubar.c:462 +#: app/menubar.c:462 app/menubar.c:464 msgid "/Instrument/-" msgstr "" -#: app/menubar.c:461 +#: app/menubar.c:463 msgid "/Instrument/_Clear Current" msgstr "" -#: app/menubar.c:463 +#: app/menubar.c:465 msgid "/Instrument/_Delete Unused Instruments" msgstr "" -#: app/menubar.c:464 +#: app/menubar.c:466 msgid "/_Settings" msgstr "" -#: app/menubar.c:465 +#: app/menubar.c:467 msgid "/Settings/Display _Oscilloscopes" msgstr "" -#: app/menubar.c:466 +#: app/menubar.c:468 msgid "/Settings/Use _Backing Store" msgstr "" -#: app/menubar.c:467 app/menubar.c:472 +#: app/menubar.c:469 app/menubar.c:474 msgid "/Settings/-" msgstr "" -#: app/menubar.c:468 +#: app/menubar.c:470 msgid "/Settings/_Keyboard Configuration..." msgstr "" -#: app/menubar.c:469 +#: app/menubar.c:471 msgid "/Settings/_Audio Configuration..." msgstr "" -#: app/menubar.c:470 +#: app/menubar.c:472 msgid "/Settings/_Playback Effects..." msgstr "" -#: app/menubar.c:471 +#: app/menubar.c:473 msgid "/Settings/_GUI Configuration..." msgstr "" -#: app/menubar.c:473 +#: app/menubar.c:475 msgid "/Settings/_Save Settings now" msgstr "" -#: app/menubar.c:474 +#: app/menubar.c:476 msgid "/Settings/Save Settings on _Exit" msgstr "" -#: app/menubar.c:475 +#: app/menubar.c:477 msgid "/_Help" msgstr "" -#: app/menubar.c:476 +#: app/menubar.c:478 msgid "/Help/_About..." msgstr "" -#: app/menubar.c:477 +#: app/menubar.c:479 msgid "/Help/-" msgstr "" -#: app/menubar.c:478 +#: app/menubar.c:480 msgid "/Help/Show _Tips..." msgstr "" -#: app/menubar.c:479 +#: app/menubar.c:481 msgid "/Help/_XM Effects..." msgstr "" @@ -951,7 +951,7 @@ msgid "Linear" msgstr "" -#: app/module-info.c:118 app/sample-editor.c:181 +#: app/module-info.c:118 app/sample-editor.c:182 msgid "Amiga" msgstr "" @@ -971,150 +971,166 @@ msgid "ProTracker Mode" msgstr "" +#: app/playlist.c:292 +msgid "Song length" +msgstr "" + +#: app/playlist.c:293 +msgid "Current pos" +msgstr "" + +#: app/playlist.c:295 +msgid "Restart pos" +msgstr "" + #: app/preferences.c:58 msgid "" "A directory called '.soundtracker' has been created in your\n" "home directory to store configuration files.\n" msgstr "" -#: app/sample-editor.c:180 +#: app/sample-editor.c:181 msgid "No loop" msgstr "" -#: app/sample-editor.c:182 +#: app/sample-editor.c:183 msgid "PingPong" msgstr "" -#: app/sample-editor.c:186 +#: app/sample-editor.c:187 msgid "8 bits" msgstr "" -#: app/sample-editor.c:187 +#: app/sample-editor.c:188 msgid "16 bits" msgstr "" -#: app/sample-editor.c:193 +#: app/sample-editor.c:194 msgid "Sample Editor" msgstr "" -#: app/sample-editor.c:233 +#: app/sample-editor.c:234 msgid "Volume" msgstr "" -#: app/sample-editor.c:234 +#: app/sample-editor.c:235 msgid "Panning" msgstr "" -#: app/sample-editor.c:235 +#: app/sample-editor.c:236 msgid "Finetune" msgstr "" -#: app/sample-editor.c:246 +#: app/sample-editor.c:247 msgid "SelStart" msgstr "" -#: app/sample-editor.c:247 +#: app/sample-editor.c:248 msgid "SelEnd" msgstr "" -#: app/sample-editor.c:255 +#: app/sample-editor.c:256 msgid "Sel None" msgstr "" -#: app/sample-editor.c:261 +#: app/sample-editor.c:262 msgid "Sel All" msgstr "" -#: app/sample-editor.c:267 +#: app/sample-editor.c:268 msgid "RelNote" msgstr "" -#: app/sample-editor.c:268 +#: app/sample-editor.c:269 msgid "Length: 0" msgstr "" -#: app/sample-editor.c:281 -msgid "Load Sample.." +#: app/sample-editor.c:282 +msgid "Load Sample..." +msgstr "" + +#: app/sample-editor.c:284 +msgid "Save WAV..." msgstr "" -#: app/sample-editor.c:283 -msgid "Save WAV.." +#: app/sample-editor.c:286 +msgid "Save region as WAV..." msgstr "" -#: app/sample-editor.c:296 +#: app/sample-editor.c:299 msgid "Save WAV" msgstr "" -#: app/sample-editor.c:306 -msgid "Clear Sample" +#: app/sample-editor.c:309 +msgid "Save Region" msgstr "" -#: app/sample-editor.c:312 +#: app/sample-editor.c:320 msgid "Monitor" msgstr "" -#: app/sample-editor.c:318 +#: app/sample-editor.c:326 msgid "Volume Ramp" msgstr "" -#: app/sample-editor.c:328 +#: app/sample-editor.c:336 msgid "Zoom to selection" msgstr "" -#: app/sample-editor.c:334 +#: app/sample-editor.c:342 msgid "Show all" msgstr "" -#: app/sample-editor.c:340 +#: app/sample-editor.c:348 msgid "Zoom in (+50%)" msgstr "" -#: app/sample-editor.c:346 +#: app/sample-editor.c:354 msgid "Zoom out (-50%)" msgstr "" -#: app/sample-editor.c:352 +#: app/sample-editor.c:360 msgid "Reverse" msgstr "" -#: app/sample-editor.c:362 +#: app/sample-editor.c:370 msgid "Cut" msgstr "" -#: app/sample-editor.c:368 +#: app/sample-editor.c:376 msgid "Remove" msgstr "" -#: app/sample-editor.c:374 +#: app/sample-editor.c:382 msgid "Copy" msgstr "" -#: app/sample-editor.c:380 +#: app/sample-editor.c:388 msgid "Paste" msgstr "" -#: app/sample-editor.c:386 -msgid "Filter" +#: app/sample-editor.c:394 +msgid "Clear Sample" msgstr "" -#: app/sample-editor.c:473 +#: app/sample-editor.c:481 #, c-format msgid "Length: %d" msgstr "" -#: app/sample-editor.c:999 +#: app/sample-editor.c:1033 msgid "" msgstr "" -#: app/sample-editor.c:1083 +#: app/sample-editor.c:1117 msgid "Read error." msgstr "" -#: app/sample-editor.c:1199 +#: app/sample-editor.c:1233 msgid "Load stereo sample" msgstr "" -#: app/sample-editor.c:1207 +#: app/sample-editor.c:1241 msgid "" "You have selected a stereo sample!\n" "(SoundTracker can only handle mono samples!)\n" @@ -1122,75 +1138,79 @@ "Please choose which channel to load:" msgstr "" -#: app/sample-editor.c:1218 +#: app/sample-editor.c:1252 msgid "Left" msgstr "" -#: app/sample-editor.c:1224 +#: app/sample-editor.c:1258 msgid "Mix" msgstr "" -#: app/sample-editor.c:1230 +#: app/sample-editor.c:1264 msgid "Right" msgstr "" -#: app/sample-editor.c:1269 +#: app/sample-editor.c:1303 msgid "Can't read sample" msgstr "" -#: app/sample-editor.c:1275 +#: app/sample-editor.c:1309 msgid "Sample is too long for current mixer module. Loading anyway." msgstr "" -#: app/sample-editor.c:1289 +#: app/sample-editor.c:1323 msgid "Can only handle 8 and 16 bit samples with up to 2 channels" msgstr "" -#: app/sample-editor.c:1374 +#: app/sample-editor.c:1415 +msgid "Nothing to save." +msgstr "" + +#: app/sample-editor.c:1442 msgid "OK" msgstr "" -#: app/sample-editor.c:1382 +#: app/sample-editor.c:1450 msgid "Start sampling" msgstr "" -#: app/sample-editor.c:1417 app/sample-editor.c:1420 +#: app/sample-editor.c:1485 app/sample-editor.c:1488 msgid "Sampling Window" msgstr "" -#: app/sample-editor.c:1520 +#: app/sample-editor.c:1588 msgid "" msgstr "" -#: app/sample-editor.c:1550 +#: app/sample-editor.c:1618 msgid "Recorded sample is too long for current mixer module. Using it anyway." msgstr "" -#: app/sample-editor.c:1582 +#: app/sample-editor.c:1650 msgid "Normalize" msgstr "" -#: app/sample-editor.c:1583 +#: app/sample-editor.c:1651 msgid "Execute" msgstr "" -#: app/sample-editor.c:1584 app/tips-dialog.c:165 +#: app/sample-editor.c:1652 app/tips-dialog.c:165 msgid "Close" msgstr "" -#: app/sample-editor.c:1593 app/sample-editor.c:1596 +#: app/sample-editor.c:1661 app/sample-editor.c:1664 msgid "Volume Ramping" msgstr "" -#: app/sample-editor.c:1613 +#: app/sample-editor.c:1681 msgid "Perform linear volume fade on Selection" msgstr "" -#: app/sample-editor.c:1625 +#: app/sample-editor.c:1693 msgid "Left [%]:" msgstr "" -#: app/sample-editor.c:1630 +#: app/sample-editor.c:1698 msgid "Right [%]:" msgstr "" @@ -1244,11 +1264,11 @@ "instrument editor page." msgstr "" -#: app/track-editor.c:82 +#: app/track-editor.c:108 msgid "Jazz Edit:" msgstr "" -#: app/track-editor.c:126 +#: app/track-editor.c:147 msgid "Tracker" msgstr "" @@ -1351,7 +1371,7 @@ msgid "No FastTracker XM and no supported MOD format!" msgstr "" -#: app/xm.c:771 app/xm.c:871 +#: app/xm.c:771 app/xm.c:876 msgid "Error while loading patterns." msgstr "" @@ -1363,11 +1383,11 @@ msgid "XM header length != 276. Maybe a pre-0.0.12 SoundTracker module? :-)\n" msgstr "" -#: app/xm.c:877 +#: app/xm.c:882 msgid "Error while loading instruments." msgstr "" -#: app/xm.c:888 +#: app/xm.c:893 #, c-format msgid "" "Module contains sample(s) that are too long for the current mixer.\n" diff -urN soundtracker-0.3.9/soundtracker.spec soundtracker-0.3.10/soundtracker.spec --- soundtracker-0.3.9/soundtracker.spec Wed Jan 12 20:39:26 2000 +++ soundtracker-0.3.10/soundtracker.spec Wed Jan 26 18:53:02 2000 @@ -1,6 +1,6 @@ %define name soundtracker -%define version 0.3.9 -%define release 10 +%define version 0.3.10 +%define release 11 %define prefix /usr Summary: Sound modules editor/player