We are currently solving the following issue within our repository. Here is the issue text:
--- BEGIN ISSUE ---
resize-cols-input missing from Column -> Resize menu
**Small description**
resize-cols-input is missing from the Column -> Resize menu

**Expected result**
when I go to the menu under Column -> Resize, I expect resize-cols-input (gz_) to be given as an option

**Additional context**
checked against v2.11

(Submitting pull request to fix this now.)



--- END ISSUE ---

Below are some code segments, each from a relevant file. One or more of these files may contain bugs.
--- BEGIN FILES ---
Path: `visidata/features/layout.py`
Content:
```
1 from visidata import VisiData, vd, Column, Sheet, Fanout
2 
3 @Column.api
4 def setWidth(self, w):
5     if self.width != w:
6         if self.width == 0 or w == 0:  # hide/unhide
7             vd.addUndo(setattr, self, '_width', self.width)
8     self._width = w
9 
10 
11 @Column.api
12 def toggleWidth(self, width):
13     'Change column width to either given `width` or default value.'
14     if self.width != width:
15         self.width = width
16     else:
17         self.width = int(self.sheet.options.default_width)
18 
19 
20 @Column.api
21 def toggleVisibility(self):
22     if self.height == 1:
23         self.height = self.sheet.options.default_height
24     else:
25         self.height = 1
26 
27 @VisiData.api
28 def unhide_cols(vd, cols, rows):
29     'sets appropriate width if column was either hidden (0) or unseen (None)'
30     for c in cols:
31         c.setWidth(abs(c.width or 0) or c.getMaxWidth(rows))
32 
33 
34 Sheet.addCommand('_', 'resize-col-max', 'cursorCol.toggleWidth(cursorCol.getMaxWidth(visibleRows))', 'toggle width of current column between full and default width'),
35 Sheet.addCommand('z_', 'resize-col-input', 'width = int(input("set width= ", value=cursorCol.width)); cursorCol.setWidth(width)', 'adjust width of current column to N')
36 Sheet.addCommand('g_', 'resize-cols-max', 'for c in visibleCols: c.setWidth(c.getMaxWidth(visibleRows))', 'toggle widths of all visible columns between full and default width'),
37 Sheet.addCommand('gz_', 'resize-cols-input', 'width = int(input("set width= ", value=cursorCol.width)); Fanout(visibleCols).setWidth(width)', 'adjust widths of all visible columns to N')
38 
39 Sheet.addCommand('-', 'hide-col', 'cursorCol.hide()', 'Hide current column')
40 Sheet.addCommand('z-', 'resize-col-half', 'cursorCol.setWidth(cursorCol.width//2)', 'reduce width of current column by half'),
41 
42 Sheet.addCommand('gv', 'unhide-cols', 'unhide_cols(columns, visibleRows)', 'Show all columns')
43 Sheet.addCommand('v', 'visibility-sheet', 'for c in visibleCols: c.toggleVisibility()')
44 Sheet.addCommand('zv', 'visibility-col', 'cursorCol.toggleVisibility()')
45 
46 vd.addMenuItems('''
47     Column > Hide > hide-col
48     Column > Unhide all > unhide-cols
49     Column > Resize > half > resize-col-half
50     Column > Resize > current column to max > resize-col-max
51     Column > Resize > current column to input > resize-col-input
52     Column > Resize > all columns max > resize-cols-max
53 ''')
54
```
--- END FILES ---

Please first localize the bug based on the issue statement, and then generate a patch according to the `git diff` format fenced by three backticks.

Here is an example:

```diff
diff --git a/examples/server_async.py b/examples/server_async.py
--- a/examples/server_async.py
+++ b/examples/server_async.py
@@ -313,4 +313,4 @@
 
 
 if __name__ == "__main__":
-    asyncio.run(run_async_server("."), debug=True)
+    asyncio.run(run_async_server(), debug=True)
diff --git a/examples/server_sync.py b/examples/server_sync.py
--- a/examples/server_sync.py
+++ b/examples/server_sync.py
@@ -313,5 +313,5 @@
 
 
 if __name__ == "__main__":
-    server = run_sync_server(".")
+    server = run_sync_server()
     server.shutdown()

```

diff --git a/visidata/features/layout.py b/visidata/features/layout.py
--- a/visidata/features/layout.py
+++ b/visidata/features/layout.py
@@ -50,4 +50,5 @@
     Column > Resize > current column to max > resize-col-max
     Column > Resize > current column to input > resize-col-input
     Column > Resize > all columns max > resize-cols-max
+    Column > Resize > all columns to input > resize-cols-input
 ''')

{"golden_diff": "diff --git a/visidata/features/layout.py b/visidata/features/layout.py\n--- a/visidata/features/layout.py\n+++ b/visidata/features/layout.py\n@@ -50,4 +50,5 @@\n     Column > Resize > current column to max > resize-col-max\n     Column > Resize > current column to input > resize-col-input\n     Column > Resize > all columns max > resize-cols-max\n+    Column > Resize > all columns to input > resize-cols-input\n ''')\n", "issue": "resize-cols-input missing from Column -> Resize menu\n**Small description**\r\nresize-cols-input is missing from the Column -> Resize menu\r\n\r\n**Expected result**\r\nwhen I go to the menu under Column -> Resize, I expect resize-cols-input (gz_) to be given as an option\r\n\r\n**Additional context**\r\nchecked against v2.11\r\n\r\n(Submitting pull request to fix this now.)\r\n\r\n\n", "before_files": [{"content": "from visidata import VisiData, vd, Column, Sheet, Fanout\n\n@Column.api\ndef setWidth(self, w):\n    if self.width != w:\n        if self.width == 0 or w == 0:  # hide/unhide\n            vd.addUndo(setattr, self, '_width', self.width)\n    self._width = w\n\n\n@Column.api\ndef toggleWidth(self, width):\n    'Change column width to either given `width` or default value.'\n    if self.width != width:\n        self.width = width\n    else:\n        self.width = int(self.sheet.options.default_width)\n\n\n@Column.api\ndef toggleVisibility(self):\n    if self.height == 1:\n        self.height = self.sheet.options.default_height\n    else:\n        self.height = 1\n\n@VisiData.api\ndef unhide_cols(vd, cols, rows):\n    'sets appropriate width if column was either hidden (0) or unseen (None)'\n    for c in cols:\n        c.setWidth(abs(c.width or 0) or c.getMaxWidth(rows))\n\n\nSheet.addCommand('_', 'resize-col-max', 'cursorCol.toggleWidth(cursorCol.getMaxWidth(visibleRows))', 'toggle width of current column between full and default width'),\nSheet.addCommand('z_', 'resize-col-input', 'width = int(input(\"set width= \", value=cursorCol.width)); cursorCol.setWidth(width)', 'adjust width of current column to N')\nSheet.addCommand('g_', 'resize-cols-max', 'for c in visibleCols: c.setWidth(c.getMaxWidth(visibleRows))', 'toggle widths of all visible columns between full and default width'),\nSheet.addCommand('gz_', 'resize-cols-input', 'width = int(input(\"set width= \", value=cursorCol.width)); Fanout(visibleCols).setWidth(width)', 'adjust widths of all visible columns to N')\n\nSheet.addCommand('-', 'hide-col', 'cursorCol.hide()', 'Hide current column')\nSheet.addCommand('z-', 'resize-col-half', 'cursorCol.setWidth(cursorCol.width//2)', 'reduce width of current column by half'),\n\nSheet.addCommand('gv', 'unhide-cols', 'unhide_cols(columns, visibleRows)', 'Show all columns')\nSheet.addCommand('v', 'visibility-sheet', 'for c in visibleCols: c.toggleVisibility()')\nSheet.addCommand('zv', 'visibility-col', 'cursorCol.toggleVisibility()')\n\nvd.addMenuItems('''\n    Column > Hide > hide-col\n    Column > Unhide all > unhide-cols\n    Column > Resize > half > resize-col-half\n    Column > Resize > current column to max > resize-col-max\n    Column > Resize > current column to input > resize-col-input\n    Column > Resize > all columns max > resize-cols-max\n''')\n", "path": "visidata/features/layout.py"}], "after_files": [{"content": "from visidata import VisiData, vd, Column, Sheet, Fanout\n\n@Column.api\ndef setWidth(self, w):\n    if self.width != w:\n        if self.width == 0 or w == 0:  # hide/unhide\n            vd.addUndo(setattr, self, '_width', self.width)\n    self._width = w\n\n\n@Column.api\ndef toggleWidth(self, width):\n    'Change column width to either given `width` or default value.'\n    if self.width != width:\n        self.width = width\n    else:\n        self.width = int(self.sheet.options.default_width)\n\n\n@Column.api\ndef toggleVisibility(self):\n    if self.height == 1:\n        self.height = self.sheet.options.default_height\n    else:\n        self.height = 1\n\n@VisiData.api\ndef unhide_cols(vd, cols, rows):\n    'sets appropriate width if column was either hidden (0) or unseen (None)'\n    for c in cols:\n        c.setWidth(abs(c.width or 0) or c.getMaxWidth(rows))\n\n\nSheet.addCommand('_', 'resize-col-max', 'cursorCol.toggleWidth(cursorCol.getMaxWidth(visibleRows))', 'toggle width of current column between full and default width'),\nSheet.addCommand('z_', 'resize-col-input', 'width = int(input(\"set width= \", value=cursorCol.width)); cursorCol.setWidth(width)', 'adjust width of current column to N')\nSheet.addCommand('g_', 'resize-cols-max', 'for c in visibleCols: c.setWidth(c.getMaxWidth(visibleRows))', 'toggle widths of all visible columns between full and default width'),\nSheet.addCommand('gz_', 'resize-cols-input', 'width = int(input(\"set width= \", value=cursorCol.width)); Fanout(visibleCols).setWidth(width)', 'adjust widths of all visible columns to N')\n\nSheet.addCommand('-', 'hide-col', 'cursorCol.hide()', 'Hide current column')\nSheet.addCommand('z-', 'resize-col-half', 'cursorCol.setWidth(cursorCol.width//2)', 'reduce width of current column by half'),\n\nSheet.addCommand('gv', 'unhide-cols', 'unhide_cols(columns, visibleRows)', 'Show all columns')\nSheet.addCommand('v', 'visibility-sheet', 'for c in visibleCols: c.toggleVisibility()')\nSheet.addCommand('zv', 'visibility-col', 'cursorCol.toggleVisibility()')\n\nvd.addMenuItems('''\n    Column > Hide > hide-col\n    Column > Unhide all > unhide-cols\n    Column > Resize > half > resize-col-half\n    Column > Resize > current column to max > resize-col-max\n    Column > Resize > current column to input > resize-col-input\n    Column > Resize > all columns max > resize-cols-max\n    Column > Resize > all columns to input > resize-cols-input\n''')\n", "path": "visidata/features/layout.py"}]}