myadm

Simple MySQL client for the terminal
git clone git://git.bitsmanent.org/myadm
Log | Files | Refs | README | LICENSE

DateCommit messageAuthorFiles+-
2019-01-27 10:47Switch to 2019Claudio Alessi1+1-1
2018-03-09 21:09Switch to 2018.Claudio Alessi2+2-2
2017-05-23 20:11Add g/G commands.Claudio Alessi2+3-2
2017-05-14 16:41Automate fragments generation.Claudio Alessi2+15-5
2017-05-13 18:34Add 20-items scroll keys.Claudio Alessi1+4-0
2017-05-13 18:09Utility to build STFL code fragments from files.Claudio Alessi1+23-0
2017-05-13 18:08Embed STFL definitions into constant code fragments.Claudio Alessi1+4-1
2017-05-13 13:00Code cleanups.Claudio Alessi2+30-41
2017-01-10 19:40Remove unused function. This makes myadm compile with older version of stfl which didn't support stfl_redraw().Claudio Alessi1+0-7
2017-01-09 16:10Fix a deprecated constant.Claudio Alessi1+1-1
2017-01-09 10:29Design stage is completed.Claudio Alessi1+6-1
2017-01-04 19:32Change to 2017.Claudio Alessi1+1-1
2017-01-04 19:31Change to 2017.Claudio Alessi1+1-1
2016-05-19 19:56Minor changes. Rename mksql_update_record() to mksql_update().Claudio Alessi1+6-6
2016-05-18 21:23Code cleanups.Claudio Alessi1+16-25
2016-05-18 20:25Remove modes.Claudio Alessi2+18-28
2016-05-18 18:08Simpler ui_ask().Claudio Alessi1+6-9
2016-05-16 21:32Simplify reload()Claudio Alessi1+2-6
2016-05-16 21:03Add feedback about current selected item. Rename itemsel() to itempos().Claudio Alessi2+19-11
2016-05-16 20:11Fix an overflow. Also remove a build warning.Claudio Alessi1+5-2
2016-05-16 20:07Minor improvements.Claudio Alessi1+11-12
2016-05-15 20:35Better mksql_alter_table().Claudio Alessi1+21-17
2016-05-15 15:09Cleanup some loop.Claudio Alessi1+3-8
2016-05-15 12:01Remove unneeded variable.Claudio Alessi1+3-4
2016-05-14 19:39Proper concat in mksql_*Claudio Alessi1+4-4
2016-05-14 19:33Inizialize len in mksql_update_record().Claudio Alessi1+6-7
2016-05-14 14:55Prevent having garbage if errors.Claudio Alessi1+3-1
2016-05-14 14:50Simplify mksql_* routines.Claudio Alessi1+8-11
2016-05-14 14:27Basic table editing. Also improve records updating.Claudio Alessi2+57-13
2016-05-14 13:13s/modkey/code/gClaudio Alessi1+2-2
2016-05-14 12:59Remove id from item.Claudio Alessi1+6-7
2016-05-12 21:40Add some more info (breadcrumbs).Claudio Alessi1+3-2
2016-05-12 21:01Add startup actions.Claudio Alessi2+23-2
2016-05-12 19:33Pass the right data type to ui_set().Claudio Alessi1+1-1
2016-05-10 20:32Fix a read() size.Claudio Alessi1+4-4
2016-05-10 20:28Use MAXQUERYLEN in mysql_file_exec().Claudio Alessi1+3-12
2016-05-10 20:21Use MAXQUERYLEN in mksql_update_record().Claudio Alessi1+8-21
2016-05-10 19:27Reinitialize ncurses after edit a file.Claudio Alessi1+4-3
2016-05-10 18:19Fix editfile(). Don't even call endwin(). Just take off and restore ncurses signal handlers.Claudio Alessi1+12-7
2016-05-10 18:05Declare sqlen at the top of the function.Claudio Alessi1+2-2
2016-05-10 18:03Get rid of GNU extension vasprintf(). Added the MAXQUERYLEN constant.Claudio Alessi2+7-9
2016-05-03 21:05Steal some sloc to mysql_exec()Claudio Alessi1+3-6
2016-05-03 20:57Remove a double check.Claudio Alessi1+0-4
2016-05-03 20:18Minimize allocation in mksql_update_record().Claudio Alessi1+8-4
2016-05-03 19:53Improve mysql_exec() interface.Claudio Alessi1+28-29
2016-05-03 19:12Remove fput/fget routines.Claudio Alessi1+0-36
2016-05-03 19:09Merge escape_flowctrls() into escape().Claudio Alessi1+5-19
2016-05-03 18:39Always run the code after a re-open (even if no changes).Claudio Alessi1+1-1
2016-05-03 18:36Fix wrong SQL code handling in editrecord().Claudio Alessi1+2-2
2016-05-03 18:32Refactoring records editing.Claudio Alessi1+129-83
2016-04-27 21:30Handle write() error in fput().Claudio Alessi1+4-1
2016-04-26 21:19Remove unused variable.Claudio Alessi1+1-1
2016-04-26 20:30Improve how the $EDITOR gets called.Claudio Alessi1+36-34
2016-04-26 18:43Restore setsid(), it's the right way to spawn. This introduces a little glitch about resizing the editor.Claudio Alessi1+3-3
2016-04-25 16:31Handle spawn on the same control tty.Claudio Alessi1+4-4
2016-04-25 14:42fget() eats the last \n inserted by editors.Claudio Alessi1+2-0
2016-04-25 13:52Unlink tmp file if cannot fput().Claudio Alessi1+3-1
2016-04-25 13:46Add the null byte in fget()Claudio Alessi1+2-1
2016-04-25 13:36Add space for the null byte.Claudio Alessi1+1-1
2016-04-25 13:34Fix sql size in mksql_update_record().Claudio Alessi1+1-1
2016-04-25 13:13Check fput() return value.Claudio Alessi1+2-1
2016-04-25 11:44Fix *sz in fget().Claudio Alessi1+1-1
2016-04-25 11:42Improve (and fix) fget/fput routines.Claudio Alessi1+13-17
2016-04-25 10:39Remove a newline from a status message.Claudio Alessi1+1-1
2016-04-25 10:37Escape single quotes when build SQL update.Claudio Alessi1+30-2
2016-04-23 18:31Remove the temp file.Claudio Alessi1+4-2
2016-04-23 18:27Use mkstemp() in editbuf().Claudio Alessi1+7-1
2016-04-23 18:18Take table name from the proper place.Claudio Alessi1+1-1
2016-04-23 17:50MySQL already returns null-terminated rows.Claudio Alessi1+0-1
2016-04-23 17:43The mode in the view is not a pointer anymore. This also removes another memory leaks.Claudio Alessi1+6-7
2016-04-23 17:39Check mode name len in newaview().Claudio Alessi1+1-1
2016-04-23 17:38Make mode name as fixed size. This also removes a memory leaks (missing free() call).Claudio Alessi1+1-2
2016-04-23 10:15Edit records feature.Claudio Alessi4+193-33
2016-04-17 14:24Simpler getmaxlengths()Claudio Alessi1+2-3
2016-04-16 14:42Improve field and item show routines. Also fix few related bug about column padding.Claudio Alessi1+14-25
2016-04-16 12:29Fix a bug in ui_showfields()Claudio Alessi1+1-0
2016-04-16 12:28Let isprint() checks for us.Claudio Alessi1+3-7
2016-04-16 12:18Rewrite ui_showfields() and ui_putitem().Claudio Alessi1+46-44
2016-04-14 21:02Remove all signals code.Claudio Alessi2+1-14
2016-04-14 20:51Add setview() which makes code a bit more compact.Claudio Alessi1+10-12
2016-04-14 20:46Fix previous commit. MySQL table max length is 64 bytes.Claudio Alessi1+1-1
2016-04-14 20:42Improve viewtable_show(). Also fix a memory leak due to an free() call inadvertitely removed.Claudio Alessi1+3-4
2016-04-14 20:30Simplify viewtable()Claudio Alessi1+1-3
2016-04-13 21:17Improve viewdb() and viewtable() routines. Fix few memory leaks along the way.Claudio Alessi1+7-9
2016-04-13 20:59Remove cloneitem().Claudio Alessi1+1-24
2016-04-13 19:45Be portable to all locales.Claudio Alessi1+1-0
2016-04-13 19:38Get choice in newaview()Claudio Alessi1+1-2
2016-04-13 19:05Use terminal raw mode.Claudio Alessi1+2-1
2016-04-13 18:15Rename ui_start() to ui_init() (and move it). stfl_run() now have a timeout of -3.Claudio Alessi1+12-11
2016-04-11 20:44Fix a bug when type unbound keys.Claudio Alessi1+7-8
2016-04-03 16:10Fix uninitialized value.Claudio Alessi1+1-1
2016-03-31 09:45Die if cannot get a MySQL resource.Claudio Alessi1+13-22
2016-03-31 09:38Use ui_modify() in ui_showitems()Claudio Alessi1+2-2
2016-03-31 09:31Handle wrong command line switch.Claudio Alessi1+2-0
2016-03-31 09:18Add a note about current status.Claudio Alessi1+2-0
2016-03-31 09:15Fix config.def.h keys order.Claudio Alessi1+5-5
2016-03-31 09:12Remove unused macros.Claudio Alessi1+0-2
2016-03-31 09:11Simplify keys lookup.Claudio Alessi1+5-6
2016-03-31 08:54s/redraw/ui_refresh/gClaudio Alessi1+9-9
2016-03-31 08:52Move more stfl_* calls inside the ui_* functions.Claudio Alessi1+56-31
2016-03-30 16:37Smaller buffer for ui_modify()Claudio Alessi1+1-1
2016-03-30 16:36Add ui_modify() and clean things up. Also renamed uiset() to ui_set().Claudio Alessi1+42-32
2016-03-30 16:30Cleanups. stfl_* functions has been renamed to ui_*. uiset() supersedes the stfl_set(f) routines.Claudio Alessi2+92-75
2016-03-24 21:46No choice is fatal.Claudio Alessi1+5-10
2016-03-24 21:42Better interface for keys. Get rid of the ISRELOAD() mess by split initialization and data loading code. Now reload() only calls the latter.Claudio Alessi2+85-66
2016-03-24 21:11Fix a bug in records().Claudio Alessi1+2-1
2016-03-24 20:43s/REFRESH/ISRELOAD/Claudio Alessi1+4-4
2016-03-24 20:38Remove welcome. DB list is default.Claudio Alessi2+1-3
2016-03-24 20:30Remove unused arguments (old limit retage).Claudio Alessi1+2-2
2016-03-24 19:16Fix cur restore in reload(). Also minor style chages.Claudio Alessi1+18-19
2016-03-24 19:03Cleanup form creation with a new stfl_form().Claudio Alessi1+19-13
2016-03-24 18:57Remove stfl_choice() in favour of getitem().Claudio Alessi1+18-18
2016-03-24 18:53Add the cur field into the view.Claudio Alessi1+4-5
2016-03-24 18:48Fix a bug in mysql_fillview().Claudio Alessi1+2-1
2016-03-24 18:37Don't assign choice if unneeded. Also remove int refresh in favour of the REFRESH() macro.Claudio Alessi1+13-14
2016-03-24 17:25Add mysql_fillview() to reuse some code. Also renames itempos() to itemsel() and getitem() to stfl_choice().Claudio Alessi2+38-54
2016-03-24 16:26More separation of concerns.Claudio Alessi1+64-48
2016-03-21 20:24Fix a type.Claudio Alessi1+4-4
2016-03-21 19:59Handle input outside of stfl.Claudio Alessi3+38-86
2016-03-21 17:22Q don't ask.Claudio Alessi1+1-1
2016-03-21 17:12Better names for detach/attach functions.Claudio Alessi1+12-12
2016-03-21 16:19Make modkey a char *.Claudio Alessi2+19-19
2016-03-21 12:18s/mutt-like/fastClaudio Alessi1+1-1
2016-03-21 12:17Add a README.Claudio Alessi3+33-2
2016-03-21 12:14Add a description.Claudio Alessi2+2-2
2016-03-21 12:12Rename core.c to myadm.c (tmp).Claudio Alessi4+752-748
2016-03-20 18:49Fix fallback help.Claudio Alessi2+2-2
2016-03-20 18:31Refresh help.Claudio Alessi1+3-4
2016-03-20 18:27Removed unused text() function.Claudio Alessi1+0-6
2016-03-14 21:36s/choose/ask/gClaudio Alessi2+7-7
2016-03-14 19:02Make modes dynamics. The first viewmode is now specified in config.h through the welcome pointer.Claudio Alessi3+113-75
2016-03-13 19:05Fix itempos().Claudio Alessi1+5-4
2016-03-13 18:18Remove maxof().Claudio Alessi1+0-11
2016-03-13 18:14Reduce dynamic allocation.Claudio Alessi2+31-46
2016-03-13 17:06Shrink sizes.Claudio Alessi1+3-4
2016-03-13 15:43Implements maxof(). Clean up a bit.Claudio Alessi1+13-10
2016-03-13 15:36Fix lens in listing. Improved the stripesc() interface.Claudio Alessi1+18-18
2016-03-12 22:33s/FLDMAXLEN/MAXCOLSZ/gClaudio Alessi2+3-3
2016-03-12 22:31Add FLDMAXLEN to config.def.hClaudio Alessi2+3-2
2016-03-12 22:20s/piece/col/Claudio Alessi1+31-31
2016-03-12 21:49Fix a bug in the flow.Claudio Alessi1+1-1
2016-03-12 21:46Lots of fix about memory management.Claudio Alessi1+83-54
2016-03-12 18:21Fix cloneitem() and cleanupview(). The choice field was not handled properly.Claudio Alessi1+6-4
2016-03-12 16:00Add -v flag.Claudio Alessi1+3-1
2016-03-12 15:53Put lens into the item. Removes the strlen() call in getmaxlengths(). Also replace a bounce of calloc() call with ecalloc().Claudio Alessi1+12-8
2016-03-12 15:30Improve stfl_showfields().Claudio Alessi1+28-15
2016-03-12 15:11Strip escape sequences.Claudio Alessi1+20-3
2016-03-10 18:28Do refactor listview.Claudio Alessi3+63-48
2016-03-08 15:05Implements proper lengths for columns.Claudio Alessi1+154-67
2016-03-04 01:34Rename getlengths to getmaxlengths. Fix a core dump... still a bit to investigate.Claudio Alessi1+17-7
2016-03-04 01:10Add column lengths (core dump in performance_scheme.events_statement*)Claudio Alessi1+28-19
2016-03-03 19:19Fix cursor disabling. Additionally, all STFL bindings has been disabled.Claudio Alessi2+7-4
2016-03-03 19:01Add command line arguments.Claudio Alessi2+62-2
2016-03-03 18:46Clean up the current view in viewprev()Claudio Alessi1+5-1
2016-03-03 18:37Auto select 1st item when listview.Claudio Alessi1+1-0
2016-03-03 18:33Add a missing header.Claudio Alessi1+4-0
2016-03-03 18:33Sync column lengths. A bit of style improvement.Claudio Alessi2+19-9
2016-03-03 17:15Sort functions by name.Claudio Alessi1+245-247
2016-03-03 16:37Fix a terrifying bug introduced by the previous commit.Claudio Alessi1+1-0
2016-03-03 16:34Use mysql_fetch_lengths() to allocate items.Claudio Alessi1+4-3
2016-03-03 16:24Handle SIGINT with quit(.i = 1).Claudio Alessi1+15-0
2016-03-03 16:14Fix a bug in itempos()Claudio Alessi1+3-0
2016-03-03 16:06Rename all text labels. A toggable label has been add to show column names.Claudio Alessi2+32-21
2016-03-03 15:40Add column names. Also fix a double form creation in mysql_listview().Claudio Alessi2+14-5
2016-03-03 15:18Close MySQL connection on cleanup.Claudio Alessi1+1-0
2016-03-03 15:14s/copyitem/cloneitem/gClaudio Alessi2+7-6
2016-03-03 13:12Clean upClaudio Alessi2+6-14
2016-03-03 13:01Set the infotext into the modes function.Claudio Alessi1+9-3
2016-03-02 17:24Simplify stfl_putitem(). Lots of work to do.Claudio Alessi1+8-14
2016-03-02 17:10Preserve item position when reload.Claudio Alessi1+4-4
2016-03-02 16:39Add config.def.hClaudio Alessi3+36-32
2016-03-02 16:36Don't call the mode function when viewprev().Claudio Alessi1+0-1
2016-03-02 16:32Quote item fields.Claudio Alessi1+15-9
2016-03-02 15:39Append list for items.Claudio Alessi1+7-3
2016-03-01 22:22Add license notice in all files.Claudio Alessi3+5-0
2016-03-01 22:17Add setup(), cleanup() and run(). Now setmode(NULL) uses &modes[0], which make things even clearer.Claudio Alessi1+28-14
2016-03-01 22:07Add stfl_setf(). The status() function has been removed. Also the stext and itext STFL variables has been renamed respectively to statustext and infotext.Claudio Alessi2+14-12
2016-03-01 20:32rm test.cClaudio Alessi1+0-227
2016-03-01 20:26Clean upClaudio Alessi1+5-3
2016-03-01 20:14Fix a memory leak.Claudio Alessi1+8-16
2016-03-01 19:43Add config.hClaudio Alessi2+30-33
2016-03-01 19:40Style upClaudio Alessi1+2-2
2016-03-01 19:35Add the choice field into the view. This replaces the selitem logic by cloning the selected item, if any, into the view choice field.Claudio Alessi1+30-3
2016-03-01 18:47Add some check in getitem()Claudio Alessi1+7-4
2016-03-01 18:39Fix a bug in setmode()Claudio Alessi1+1-1
2016-02-29 22:06Implements choose(). Also add a new bar at the bottom of the items to play around with info/stats bar and command line.Claudio Alessi2+40-24
2016-02-29 21:34Add Makefile, config.mk and LICENSE.Claudio Alessi4+109-1
2016-02-29 21:09Make char * all DB* constants.Claudio Alessi1+4-5
2016-02-29 21:06Cleanups.Claudio Alessi1+1-5
2016-02-29 20:46Cleanup a bit thx to the new mysql_listview().Claudio Alessi1+15-27
2016-02-29 20:26Fix column name length in mysql_items()Claudio Alessi1+20-10
2016-02-29 18:44Add vargs support to status()Claudio Alessi1+7-7
2016-02-29 18:43Add vargs support to mysql_exec()Claudio Alessi1+10-6
2016-02-29 18:32Fix records() table name string size.Claudio Alessi1+2-2
2016-02-29 18:26Introduce stfl_putitem(). This centralizes item format and make mode functions a bit more UI agnostic.Claudio Alessi1+31-29
2016-02-29 18:16Add reload()Claudio Alessi1+8-2
2016-02-29 18:02Remove an useless check.Claudio Alessi1+2-10
2016-02-28 14:59Remove useless initialization.Claudio Alessi1+0-3
2016-02-28 13:53Let a bug happen less frequent. A comment has been added, it have to be fixed... obviously.Claudio Alessi1+2-1
2016-02-28 13:11Add header and a bit of style.Claudio Alessi1+5-1
2016-02-28 13:03items.stfl replaces all viewsClaudio Alessi4+23-32
2016-02-28 12:37Rudimental records list w/ all fields.Claudio Alessi1+8-1
2016-02-27 22:52Clean up.Claudio Alessi1+1-2
2016-02-27 19:26Refactor Item. The name field has been removed in favour of fields, which holds all the fields in a row.Claudio Alessi1+27-19
2016-02-24 22:57Introduce selitem. This has its drawback (annoted at the top of the file). A fresh getitem() clean up the things a bit, many more to be done.Claudio Alessi1+40-8
2016-02-24 20:26Rudimental status bar. Also implemented quit confirmation.Claudio Alessi3+41-13
2016-02-24 19:48Change mysql_items() interface.Claudio Alessi1+11-15
2016-02-24 19:41Cleanup items. Also minor changes in databases().Claudio Alessi1+22-23
2016-02-24 18:36Remove bind_* from stfl files.Claudio Alessi2+0-4
2016-02-24 18:18Remove stflkey in favour of itempos(). Also added attachitemto() which looks clearer. Many more questions raised with this commit.Claudio Alessi1+52-26
2016-02-23 23:07Just in case.Claudio Alessi4+631-0