summaryrefslogtreecommitdiff
path: root/usr.bin/mg/file.c
AgeCommit message (Collapse)Author
2008-06-18Don't free the buffer name until after you call adjustname.Kjell Wooding
Fixes a segfault that occurs when you write a file to an alternate name. Introduced by yours truly in 20060406. how did it last this long?
2008-06-13Fix debian bug #432656Kjell Wooding
'Prints root directory as "//" instead of "/" for root files.' Issue was with dirname, which strips the trailing slash, except when given "/". Wrap it in a cover function to fix. Also helps with portability to data-munging dirname glibc.
2008-03-21Reset startrow when opening multiple files. Spotted by matthieu@Pierre-Yves Ritschard
ok, kjell@, matthieu@
2006-12-24Fix a bug where inserting a file resulted in an incorrectKjell Wooding
line-number count for a buffer (M-X insert-file, M-> to reproduce). While here, fix a number of bugs with incorrect line numbers after swap point-and-mark Originally reported via debian's bug tracking system. Fix tested by Han Boetes and Deanna Phillips.
2006-11-17Fix a needless inversion of flag names; i.e. change them from theKjell Wooding
negative to the positive. undo_boundary_enable(TRUE) makes a LOT more sense than undo_no_boundary(FALSE). While here, whack a global, and fix a bug noted by otto: undoing a file insertion sometimes left stray characters around. ok beck@, otto@
2006-07-25Add bfirstlp(), blastlp() macros, returning the first and last linesKjell Wooding
of a buffer respectively. Removes an ugly construction than necessitated "go to first line"-type comments throughout the code. No binary change
2006-07-25Rename the header line of a buffer to b_headp, from the remarkablyKjell Wooding
unintuitive b_linep. No binary change.
2006-07-08Introduce a 'MODIFIED' boundary type for undo records.Kjell Wooding
This allows undo to clear the modified flag when undo-ing all the way from a loaded buffer. Originally whipped up at c2k6 after proddings from beck. jason@ ok.
2006-06-01Display line number in the mg statusbar. Yes, it seems like a fuglyKjell Wooding
way to do it, but all the clever and pretty ways utterly failed. Basic use seems fine. We'll turdshine the special cases later. If it bothers you, use M-x line-number-mode, or put same in your ~/.mg file to disable. ok cloder, jason
2006-06-01make // /~ path rewriting optional in adjustname() and use it everywhereJason Wright
except for the command line specified files. ok kjell,cloder
2006-06-01Initialize current window, and clear the readonly flag earlier in fileKjell Wooding
read process. This allows code in the autoexec path (i.e. ~/.mg) to operate on the buffer, making ~/.mg files much more useful.
2006-06-01find-file-other-window and find-buffer-other-window should splitKjell Wooding
the window if you ask for whatever file you are currently visiting. pointed out, ok beck@
2006-05-28Make Window Flags more mnemonic (and less dumb); i.e.Kjell Wooding
WFHARD -> WFFULL (Redraw full window) WFFORCE -> WFFRAME (Reframe window). No binary change
2006-05-02Make buffers store their own working directory. This makes things likeKjell Wooding
grep, compile, lint work as expected (act on current buffer's cwd). Display this path when opening or replacing a file, rather than relying on the user to guess, or remember.
2006-04-06Fix a bug whereby a written buffer (^X^W) would not have the correctKjell Wooding
trailing buffer number appended (e.g. "file<2>") in case an existing buffer shared its basename().
2006-04-03few more int that can become a size_tTheo de Raadt
2006-04-03lint love; ok kjellTheo de Raadt
2005-12-20Clean up the ugly casted frees. In one case, this meant eliminating a nastyKjell Wooding
struct/union/casting nightmare when building the list of names for filename completion. In particular, be consistent about strduping and freeing the list data.
2005-12-20Do some delinting of strl-type functions. Also, remove a superfluousKjell Wooding
word in the undo-list.
2005-12-13More name-clash delintingKjell Wooding
2005-11-20Kill the NO_BACKUP #ifdefKjell Wooding
2005-11-20toast NO_DIRED #ifdef; ok kjellTheo de Raadt
2005-11-18greedy use of typedef struct was making code harder to read; ok kjell cloderTheo de Raadt
2005-11-13Copy buffer before handing it to basename().Kjell Wooding
Inspired by a patch from Han Boetes.
2005-10-14add missing /* ARGSUSED */ to quiet lint.Kjell Wooding
2005-10-13spacingTheo de Raadt
2005-10-13Make dired buffer read-only by default.Kjell Wooding
Noticed by Han Boetes
2005-10-13Use dired mode automatically if file specified for loading isKjell Wooding
a directory. Modified version of patch from Han Boetes. ok cloder@
2005-10-13KNF and minor cleanup. Remove an impossible condition check.Kjell Wooding
Also, remove annoying "now readonly" message, as this information is already reflected in the statusbar
2005-08-09Clean up eread handling in mg. (basically, fallout from the 'enter oftenKjell Wooding
means abort' behaviour added during the hackathon). Eliminates redundant ereply function, fixes miscellaneous cores when aborting, and move a number of assumed pathnames into the prompt text, since they are used there anyway. All changes consistent with emacs behavior ok beck@ many, many moons ago.
2005-06-14Add explicit public domain notices to all public domain files.Kjell Wooding
ok millert@, deraadt@
2005-06-03Clean up find-alternate-file (C-x C-v) so abort returns to originalKjell Wooding
file, like its emacs ancestor. ok cloder@
2005-05-30add find-alternate-file command and binding for ^X^V; ok cloderJason Wright
(you're welcome kjell)
2005-05-27In find file, behave like emacs: the default starting directory forChad Loder
completion is the directory of the current buffer's file, if any, rather than the working directory from where you launched mg. Prodding by reyk, ok reyk and fgont
2005-04-21correct strlcpy abuse, and always check for NULL return from find_bufferBob Beck
ok cloder@, feedback from many
2005-04-03This is a no binary change which does:David Berghoff
- spelling, punctuation fixes - variable declaration lineup - use parentheses for return and sizeof - K&R function declarations -> ANSI - other minor code beautification ok henning@
2005-03-10fix more BACKUP/NOBACKUP/NO_BACKUP confusion, again no binary change.Henning Brauer
spotted by jmc@
2005-03-09fix mg's behaviour with regards to files on which we do not haveJean-Francois Brousseau
write access. diff originally from vincent@ and forgotten for a while. ok rohee@, "toss it in, i'll bitch if it doesn't work" henning@
2004-07-22stage 1 of the infinite minibuffer work - add support for on the flyVincent Labrecque
buffer reallocation in veread(). This commit only changes the API. All the buffers have exactly the same bounds as before for now. tested by a couple of my very helpful testers!
2003-11-09fix the undo record size for insert-file so we do not get an extra byteVincent Labrecque
2003-11-08typos from Jonathon Gray;Jason McIntyre
2003-10-13remember the new filename on ^X^WVincent Labrecque
ok deraadt
2003-08-16spacingTheo de Raadt
2003-01-06support +number; rewritten from buggy code by mjc@bitz.ca, vincent okTheo de Raadt
2002-09-15don't add undo records when we open a file, only when we insert it.Vincent Labrecque
ok deraadt@
2002-07-25 replace the ugly and buggy adjustname function by a simple one usingVincent Labrecque
simple APIs. makes mg not crash with 65k filenames... ok art@
2002-07-03 a few missing tests for malloc()'s return value.Vincent Labrecque
ok art@
2002-07-01KNF + ansi; from zyrnix (only the easy part of his diffs)Vincent Labrecque
2002-06-19add an undo insert record on insert-file. this makes insert-file undoable.Vincent Labrecque
ok deraadt@
2002-05-29 add an "auto-execute" feature, that allows binding function calls toVincent Labrecque
certain patterns. for example, `auto-execute "*.c" auto-indent-mode'. ok art@