X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=lib%2Fscripts%2Fprefs2prefs_lfuns.py;h=ec65f97925d8ebd69babbb45ab67a07845d47ff6;hb=4597622ce50a4c00d4a7bf8ee9639fec03c7a8dc;hp=0461cc26b529a8970488d118120f9385c61db387;hpb=de45075defffd47a59f211c22db9100419f98162;p=lyx.git diff --git a/lib/scripts/prefs2prefs_lfuns.py b/lib/scripts/prefs2prefs_lfuns.py index 0461cc26b5..ec65f97925 100644 --- a/lib/scripts/prefs2prefs_lfuns.py +++ b/lib/scripts/prefs2prefs_lfuns.py @@ -1,4 +1,3 @@ -#! /usr/bin/env python # -*- coding: utf-8 -*- # file prefs2prefs-lfuns.py @@ -27,9 +26,9 @@ import sys, re # These accept a line as argument and should return a list: # (bool, newline) # where the bool indicates whether we changed anything. If not, -# one normally returns: (False, []). +# one normally returns: (False, ""). -no_match = (False, []) +no_match = (False, "") def simple_renaming(line, old, new): if line.find(old) == -1: @@ -38,6 +37,12 @@ def simple_renaming(line, old, new): return (True, line) +def simple_remove(line, old): + if line.find(old) == -1: + return no_match + return (True, "") + + def next_inset_modify(line): return simple_renaming(line, "next-inset-modify", "inset-modify") @@ -134,6 +139,31 @@ def paragraph_spacing(line): def tabular_feature(line): return simple_renaming(line, "tabular-feature", "inset-modify tabular") + +re_tabular_feature = re.compile(r"inset-modify\s+tabular(\s+from-dialog)?") +def redo_tabular_feature(line): + # we change as follows: + # inset-modify tabular -> tabular-feature + # but: + # inset-modify tabular from-dialog -> inset-modify tabular + # + # "from-dialog" was never used directly but the user might do, if they + # followed the standard instructions to create a custom shortcut by looking + # at the message panel. The equivalent functionality is now provided by + # inset-modify tabular (without from-dialog). + def change(match): + if match.group(1): + return "inset-modify tabular" + else: + return "tabular-feature" + + result = re_tabular_feature.subn(change, line) + if result[1]: + return (True, result[0]) + else: + return no_match + + re_Bar2bar = re.compile(r'^(\\(?:bind|unbind))\s+"([^"]*)Bar"(\s+"[^"]+")') def Bar2bar(line): m = re_Bar2bar.search(line) @@ -146,16 +176,51 @@ def Bar2bar(line): newline = btype + " \"" + mod + "bar\"" + rest return (True, newline) + def paragraph_break(line): return simple_renaming(line, "break-paragraph", "paragraph-break") + def tab_group_close(line): return simple_renaming(line, "close-tab-group", "tab-group-close") + def view_split(line): return simple_renaming(line, "split-view", "view-split") -# + +def label_copy_as_reference(line): + return simple_renaming(line, "copy-label-as-reference", "label-copy-as-reference") + + +def remove_print_support(line): + return simple_remove(line, "dialog-show print") + + +def info_rename_vcsauthor(line): + return simple_renaming(line, "info-insert buffer vcs-author", "info-insert vcs author") + + +def info_rename_vcsdate(line): + return simple_renaming(line, "info-insert buffer vcs-date", "info-insert vcs date") + + +def info_rename_vcstime(line): + return simple_renaming(line, "info-insert buffer vcs-time", "info-insert vcs time") + + +def info_rename_vcsrevision(line): + return simple_renaming(line, "info-insert buffer vcs-revision", "info-insert vcs revision") + + +def info_rename_vcstreerevision(line): + return simple_renaming(line, "info-insert buffer vcs-tree-revision", "info-insert vcs tree-revision") + + +def remove_date_insert(line): + return simple_remove(line, "date-insert") + + # ########################################################### @@ -178,7 +243,21 @@ conversions = [ [ 2, [ # list of conversions to format 2, LyX 2.1 paragraph_break, tab_group_close, - view_split + view_split, + label_copy_as_reference + ]], + [ 3, [ # list of conversions to format 3 + remove_print_support ]], + [ 4, [ # list of conversions to format 4, LyX 2.2 + redo_tabular_feature + ]], + [ 5, [ # list of conversions to format 5, LyX 2.4 + info_rename_vcsauthor, + info_rename_vcsdate, + info_rename_vcstime, + info_rename_vcsrevision, + info_rename_vcstreerevision, + remove_date_insert + ]] ] -