equal
deleted
inserted
replaced
1216 |
1216 |
1217 def changemode(state, mode): |
1217 def changemode(state, mode): |
1218 curmode, _ = state.mode |
1218 curmode, _ = state.mode |
1219 state.mode = (mode, curmode) |
1219 state.mode = (mode, curmode) |
1220 if mode == MODE_PATCH: |
1220 if mode == MODE_PATCH: |
1221 state.modes[MODE_PATCH][b'patchcontents'] = patchcontents(state) |
1221 state.modes[MODE_PATCH][b'patchcontents'] = state.patch_contents() |
1222 |
1222 |
1223 |
1223 |
1224 def makeselection(state, pos): |
1224 def makeselection(state, pos): |
1225 state.selected = pos |
1225 state.selected = pos |
1226 |
1226 |
1321 |
1321 |
1322 def _trunc_tail(line, n): |
1322 def _trunc_tail(line, n): |
1323 if len(line) <= n: |
1323 if len(line) <= n: |
1324 return line |
1324 return line |
1325 return line[: n - 2] + b' >' |
1325 return line[: n - 2] + b' >' |
1326 |
|
1327 |
|
1328 def patchcontents(state): |
|
1329 repo = state.repo |
|
1330 rule = state.rules[state.pos] |
|
1331 displayer = logcmdutil.changesetdisplayer( |
|
1332 repo.ui, repo, {b"patch": True, b"template": b"status"}, buffered=True |
|
1333 ) |
|
1334 overrides = {(b'ui', b'verbose'): True} |
|
1335 with repo.ui.configoverride(overrides, source=b'histedit'): |
|
1336 displayer.show(rule.ctx) |
|
1337 displayer.close() |
|
1338 return displayer.hunk[rule.ctx.rev()].splitlines() |
|
1339 |
1326 |
1340 |
1327 |
1341 class _chistedit_state(object): |
1328 class _chistedit_state(object): |
1342 def __init__( |
1329 def __init__( |
1343 self, |
1330 self, |
1588 elif action == b'line-down': |
1575 elif action == b'line-down': |
1589 return E_LINEDOWN |
1576 return E_LINEDOWN |
1590 elif action == b'line-up': |
1577 elif action == b'line-up': |
1591 return E_LINEUP |
1578 return E_LINEUP |
1592 |
1579 |
|
1580 def patch_contents(self): |
|
1581 repo = self.repo |
|
1582 rule = self.rules[self.pos] |
|
1583 displayer = logcmdutil.changesetdisplayer( |
|
1584 repo.ui, |
|
1585 repo, |
|
1586 {b"patch": True, b"template": b"status"}, |
|
1587 buffered=True, |
|
1588 ) |
|
1589 overrides = {(b'ui', b'verbose'): True} |
|
1590 with repo.ui.configoverride(overrides, source=b'histedit'): |
|
1591 displayer.show(rule.ctx) |
|
1592 displayer.close() |
|
1593 return displayer.hunk[rule.ctx.rev()].splitlines() |
|
1594 |
1593 |
1595 |
1594 def _chisteditmain(repo, rules, stdscr): |
1596 def _chisteditmain(repo, rules, stdscr): |
1595 try: |
1597 try: |
1596 curses.use_default_colors() |
1598 curses.use_default_colors() |
1597 except curses.error: |
1599 except curses.error: |