mirror of
https://github.com/python/cpython.git
synced 2025-07-24 11:44:31 +00:00
Make 'python -tt' the default, meaning Python won't allow mixing tabs and
spaces for indentation. Adds a '-ttt' option to turn the errors back into warnings; I'm not yet sure whether that's desireable for Py3K. Also remove the magic for setting the size of tabs based on emacs/vim-style comments. Python now always considers tabstops to be every-8-spaces.
This commit is contained in:
parent
0c4eb62565
commit
6caa07b23d
2 changed files with 8 additions and 46 deletions
|
@ -120,8 +120,8 @@ tok_new(void)
|
|||
tok->lineno = 0;
|
||||
tok->level = 0;
|
||||
tok->filename = NULL;
|
||||
tok->altwarning = 0;
|
||||
tok->alterror = 0;
|
||||
tok->altwarning = 1;
|
||||
tok->alterror = 1;
|
||||
tok->alttabsize = 1;
|
||||
tok->altindstack[0] = 0;
|
||||
tok->decoding_state = 0;
|
||||
|
@ -1207,41 +1207,10 @@ tok_get(register struct tok_state *tok, char **p_start, char **p_end)
|
|||
/* Set start of current token */
|
||||
tok->start = tok->cur - 1;
|
||||
|
||||
/* Skip comment, while looking for tab-setting magic */
|
||||
if (c == '#') {
|
||||
static char *tabforms[] = {
|
||||
"tab-width:", /* Emacs */
|
||||
":tabstop=", /* vim, full form */
|
||||
":ts=", /* vim, abbreviated form */
|
||||
"set tabsize=", /* will vi never die? */
|
||||
/* more templates can be added here to support other editors */
|
||||
};
|
||||
char cbuf[80];
|
||||
char *tp, **cp;
|
||||
tp = cbuf;
|
||||
do {
|
||||
*tp++ = c = tok_nextc(tok);
|
||||
} while (c != EOF && c != '\n' &&
|
||||
tp - cbuf + 1 < sizeof(cbuf));
|
||||
*tp = '\0';
|
||||
for (cp = tabforms;
|
||||
cp < tabforms + sizeof(tabforms)/sizeof(tabforms[0]);
|
||||
cp++) {
|
||||
if ((tp = strstr(cbuf, *cp))) {
|
||||
int newsize = atoi(tp + strlen(*cp));
|
||||
|
||||
if (newsize >= 1 && newsize <= 40) {
|
||||
tok->tabsize = newsize;
|
||||
if (Py_VerboseFlag)
|
||||
PySys_WriteStderr(
|
||||
"Tab size set to %d\n",
|
||||
newsize);
|
||||
}
|
||||
}
|
||||
}
|
||||
/* Skip comment */
|
||||
if (c == '#')
|
||||
while (c != EOF && c != '\n')
|
||||
c = tok_nextc(tok);
|
||||
}
|
||||
|
||||
/* Check for EOF and errors now */
|
||||
if (c == EOF) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue