From 232c519980c35d519946c38b9037141ab3f6a800 Mon Sep 17 00:00:00 2001 From: noniagriconomie Date: Wed, 21 Apr 2021 14:58:48 +0200 Subject: [PATCH] [Console] Document console cursor --- _images/components/console/cursor.gif | Bin 0 -> 64894 bytes components/console/helpers/cursor.rst | 101 +++++++++++++++++++++ components/console/helpers/index.rst | 1 + components/console/helpers/map.rst.inc | 1 + components/console/helpers/progressbar.rst | 2 +- console.rst | 1 + 6 files changed, 105 insertions(+), 1 deletion(-) create mode 100644 _images/components/console/cursor.gif create mode 100644 components/console/helpers/cursor.rst diff --git a/_images/components/console/cursor.gif b/_images/components/console/cursor.gif new file mode 100644 index 0000000000000000000000000000000000000000..a4fd844eb80a1f0502cfc131c7f6a5b687e03c34 GIT binary patch literal 64894 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 m1_yh9CKcCrC|nKQj8@EEqa-F8-am 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, 11); + + // and write text on this position using the output + $output->write('My text'); + + // ... + } + } + +Using the cursor +---------------- + +Moving the cursor +................. + +There are fews methods to control moving the command cursor:: + + // moves the cursor 1 line up from its current position + $cursor->moveUp(); + + // moves the cursor 3 lines up from its current position + $cursor->moveUp(3); + + // same for down + $cursor->moveDown(); + + // moves the cursor 1 column right from its current position + $cursor->moveRight(); + + // moves the cursor 3 columns right from its current position + $cursor->moveRight(3); + + // same for left + $cursor->moveLeft(); + + // move the cursor to a specific position from its current position + $cursor->moveToPosition(7, 11); + +You can get the current command's cursor position by using:: + + $position = $cursor->getCurrentPosition(); + // $position[0] // columns (aka x coordinate) + // $position[1] // rows (aka y coordinate) + +Clearing output +............... + +The cursor can also clear some output on the screen:: + + // clears all the output from the current line + $cursor->clearLine(); + + // clears all the output from the current line after the current position + $cursor->clearLineAfter(); + + // clears all the output from the cursors' current position to the end of the screen + $cursor->clearOutput(); + + // clears the entire screen + $cursor->clearScreen(); + +You also can leverage the :method:`Symfony\\Component\\Console\\Cursor::show` +and :method:`Symfony\\Component\\Console\\Cursor::hide` methods on the cursor. diff --git a/components/console/helpers/index.rst b/components/console/helpers/index.rst index 5f328d47472..09546769655 100644 --- a/components/console/helpers/index.rst +++ b/components/console/helpers/index.rst @@ -13,6 +13,7 @@ The Console Helpers questionhelper table debug_formatter + cursor The Console component comes with some useful helpers. These helpers contain functions to ease some common tasks. diff --git a/components/console/helpers/map.rst.inc b/components/console/helpers/map.rst.inc index 68e1e722a87..8f9ce0ca0f3 100644 --- a/components/console/helpers/map.rst.inc +++ b/components/console/helpers/map.rst.inc @@ -4,3 +4,4 @@ * :doc:`/components/console/helpers/questionhelper` * :doc:`/components/console/helpers/table` * :doc:`/components/console/helpers/debug_formatter` +* :doc:`/components/console/helpers/cursor` diff --git a/components/console/helpers/progressbar.rst b/components/console/helpers/progressbar.rst index ebdcaba1d64..4f1dd8fe3a5 100644 --- a/components/console/helpers/progressbar.rst +++ b/components/console/helpers/progressbar.rst @@ -349,7 +349,7 @@ placeholder before displaying the progress bar:: // 0/100 -- Start $progressBar->setMessage('Task is in progress...'); - $progressBar->advance(); + $progressBar->advance(); // 1/100 -- Task is in progress... Messages can be combined with custom placeholders too. In this example, the diff --git a/console.rst b/console.rst index aa23bddbffd..b4add295fd4 100644 --- a/console.rst +++ b/console.rst @@ -446,5 +446,6 @@ tools capable of helping you with different tasks: * :doc:`/components/console/helpers/table`: displays tabular data as a table * :doc:`/components/console/helpers/debug_formatter`: provides functions to output debug information when running an external program +* :doc:`/components/console/helpers/cursor`: allows to manipulate the cursor in the terminal .. _`exit status`: https://en.wikipedia.org/wiki/Exit_status