web-dev-qa-db-fra.com

Comment puis-je modifier la largeur d'une fenêtre de console Windows?

Est-il possible d'augmenter par programmation ou autrement la largeur de la fenêtre de la console Windows? Ou dois-je créer un programme wrapper qui ressemble à la console et agit en quelque sorte? Y a-t-il déjà des programmes qui font cela? J'utilise beaucoup Cygwin dans mon développement, et il me semble un peu ridicule que toutes les fenêtres de console dans Windows soient limitées en largeur.

Si cela importe, j'utilise Windows XP.

28
Matthew Scharley

Vous pouvez l'augmenter manuellement en cliquant avec le bouton droit sur l'icône de la barre d'état et en entrant dans la boîte de dialogue des options.

Il existe également des émulateurs de terminaux tiers pour Windows, tels que Console :

Screenshot of Console

21
John Millikin

Exécutez simplement "mode cols, lines" pour modifier la taille de la fenêtre de console actuelle:

mode 120,60

redimensionnera la fenêtre de la console à 120 colonnes et 60 lignes

55
Thomas
system("mode 45, 20");

Il s'agit d'une mauvaise solution car elle désactive le défilement vertical.

C'est mieux:

system("mode CON: COLS=120");
10
Sergey

Il existe une fonction API de fenêtre pour définir la largeur. Voici un tut à ce sujet. http://www.adrianxw.dk/SoftwareSite/Consoles/Consoles6.html

9
RussellSprouts

Si vous faites un clic droit sur la barre de titre d'une fenêtre de commande et choisissez des propriétés, vous pouvez changer les largeurs dans l'onglet Disposition

6
Carl

Si vous programmez C #, voici une méthode qui a fonctionné pour moi (à partir du bas de cette page )

static void setConsoleSize()
   {
       System.Console.SetWindowPosition(0,0);   // sets window position to upper left
       System.Console.SetBufferSize(200,300);   // make sure buffer is bigger than window
       System.Console.SetWindowSize(122,54);   //set window size to almost full screen 
       //width - maxSet(127,57) (width, height)

       //System.Console.ResetColor(); //resets fore and background colors to default

   }  // End  setConsoleSize()

Cité dans le post: "Ma taille maximale de console que je pouvais utiliser était de 127 colonnes et 57 lignes car c'est tout ce que ma résolution d'écran permettra. Réinitialisez votre résolution d'écran et cela changera.

Ce n'est qu'une de ces choses avec lesquelles vous allez devoir jouer pour que vous puissiez l'afficher comme vous le souhaitez. "

5
DeveloperDan

les

mode 

et

system("mode... 

les solutions ne fonctionnaient pas pour moi et je ne pouvais pas définir la mise en page sans obtenir une erreur d'accès.

Le correctif consistait à fermer Cygwin, à cliquer avec le bouton droit sur les propriétés de l'icône dans le menu Démarrer et à modifier la disposition -> fenêtre -> hauteur, puis à dire oui pour autoriser les privilèges d'administrateur à enregistrer les paramètres. (pas exécuté en tant qu'administrateur).

maintenant, lorsque j'exécute Cygwin, cela me donne toujours une grande fenêtre.

Windows 7 64 bits.

2
rob

Hé, avez-vous déjà pensé à la possibilité de lancer et d'exécuter Cygwin à partir de l'invite de commande Windows/console? C'est ce que je fais toujours. Ensuite, vous pouvez faire tout ce que vous voulez pour le look de la console pour la rendre sexy.

essayer d'obtenir su à partir de cygwin peut parfois être difficile, surtout lorsque vous essayez de faire quelques calculs lourds avec les outils fournis. Les gens ont essayé toutes sortes de choses de Sudo SU pour Windows à quoi que ce soit ... quand cela peut être aussi simple que de transmettre les informations d'identification de l'administrateur de vous "l'utilisateur" (si vous êtes l'administrateur?), Même sans les pop-ups UAC étranges . Vous pouvez le faire via un simple script batch. Ayez ci-dessous une capture d'écran de ce à quoi ressemble mon Cygwin et cela fonctionne également à partir d'une version portable de Cygwin! Aucune entrée de registre et aucune de ces ordures!
Le fichier de commandes transmet les informations d'identification à bash, puis bash change de répertoire (notez que les guillemets doubles sont nécessaires pour transmettre cette variable à la colsole Cygwin pour qu'elle fonctionne)

@echo off
setlocal enabledelayedexpansion
REM Changing working folder back to current directory
%~d0
CD %~dp0
REM Folder changed
bash --login -i -c "cd {insert_directory_name_here} && exec ./execution-file-here"
cls
exit 1

Remarque: les crochets tels que {} dans l'exemple ci-dessus ne sont PAS inclus dans le script batch. notez également que la fenêtre windows CMD transmet la chaîne à cygwin pour l'interpréter comme plusieurs conditions; cygwin ne lit pas les citations elles-mêmes mais ce qui les sépare. le && dit changer les répertoires et quand vous exécutez le script ./execution-file-ici quand vous y arrivez.

C'est un double coup dur que vous pouvez lancer une application de type Cygwin ou Linux à partir d'une fenêtre MS-Windows et même pas taper une lettre de code ou ouvrir une console ou quoi que ce soit.

Je garde ce fichier de commandes dans le répertoire/Cygwin/bin et crée un lien de raccourci Windows sur le bureau. Dans le raccourci, je peux styliser la fenêtre Shell cmd. Aller même jusqu'à la transparence ;-)

enter image description here

enter image description here

1
James

Pour obtenir toutes les futures fenêtres de la console dans une taille spécifique, vous pouvez créer un raccourci vers cmd.exe, puis définir la taille dans l'onglet de disposition des propriétés de raccourci.

1
sepang

Dans les propriétés de la console de l'onglet Disposition, vous pouvez configurer les éléments suivants:

Largeur du tampon d'écran

Largeur de la fenêtre

La largeur de la taille de la fenêtre correspond au nombre de caractères par ligne qui seront visibles. La taille de la mémoire tampon d'écran est le size de la ligne. Si vous définissez par exemple la largeur de la taille de la fenêtre à 100 et la largeur de la taille du tampon d'écran à 200, vous devrez utiliser la barre de défilement pour afficher tout le contenu des lignes avec des tailles comprises entre 100 et 200. Les lignes de plus de 200 caractères apparaîtront en plus d'une ligne. Ceci est utile si vous avez de longues lignes et que vous souhaitez les copier dans un fichier texte.

Les mêmes choses s'appliquent pour Windows PowerShell

1
kgiannakakis

Cliquez sur l'icône en haut à gauche du cadre de la console (celle qui ressemble à "C: \"), puis sélectionnez Propriétés. Cela vous permet de personnaliser toutes sortes de choses. L'onglet "mise en page" a la largeur de la fenêtre.

0
Galghamon