abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 14:11 | IT novinky

    Řada vestavěných počítačových desek a vývojových platforem NVIDIA Jetson se rozrostla o NVIDIA Jetson Thor. Ve srovnání se svým předchůdcem NVIDIA Jetson Orin nabízí 7,5krát vyšší výpočetní výkon umělé inteligence a 3,5krát vyšší energetickou účinnost. Softwarový stack NVIDIA JetPack 7 je založen na Ubuntu 24.04 LTS.

    Ladislav Hagara | Komentářů: 1
    dnes 00:44 | Bezpečnostní upozornění

    Národní úřad pro kybernetickou a informační bezpečnost (NÚKIB) spolu s NSA a dalšími americkými úřady upozorňuje (en) na čínského aktéra Salt Typhoon, který kompromituje sítě po celém světě.

    Ladislav Hagara | Komentářů: 14
    včera 16:33 | IT novinky

    Společnost Framework Computer představila (YouTube) nový výkonnější Framework Laptop 16. Rozhodnou se lze například pro procesor Ryzen AI 9 HX 370 a grafickou kartu NVIDIA GeForce RTX 5070.

    Ladislav Hagara | Komentářů: 1
    včera 14:22 | IT novinky

    Google oznamuje, že na „certifikovaných“ zařízeních s Androidem omezí instalaci aplikací (včetně „sideloadingu“) tak, že bude vyžadovat, aby aplikace byly podepsány centrálně registrovanými vývojáři s ověřenou identitou. Tato politika bude implementována během roku 2026 ve vybraných zemích (jihovýchodní Asie, Brazílie) a od roku 2027 celosvětově.

    Fluttershy, yay! | Komentářů: 6
    včera 13:11 | Nová verze

    Byla vydána nová verze 21.1.0, tj. první stabilní verze z nové řady 21.1.x, překladačové infrastruktury LLVM (Wikipedie). Přehled novinek v poznámkách k vydání: LLVM, Clang, LLD, Extra Clang Tools a Libc++.

    Ladislav Hagara | Komentářů: 0
    včera 05:11 | Komunita

    Alyssa Anne Rosenzweig v příspěvku na svém blogu oznámila, že opustila Asahi Linux a nastoupila do Intelu. Místo Apple M1 a M2 se bude věnovat architektuře Intel Xe-HPG.

    Ladislav Hagara | Komentářů: 17
    26.8. 12:55 | IT novinky

    EU chce (pořád) skenovat soukromé zprávy a fotografie. Návrh "Chat Control" by nařídil skenování všech soukromých digitálních komunikací, včetně šifrovaných zpráv a fotografií.

    Ladislav Hagara | Komentářů: 59
    26.8. 12:11 | Nová verze

    Byly publikovány fotografie a všechny videozáznamy z Python konference PyCon US 2025 proběhlé v květnu.

    Ladislav Hagara | Komentářů: 0
    26.8. 11:55 | IT novinky

    Společnost xAI a sociální síť X amerického miliardáře Elona Muska zažalovaly firmy Apple a OpenAI. Viní je z nezákonné konspirace s cílem potlačit konkurenci v oblasti umělé inteligence (AI).

    Ladislav Hagara | Komentářů: 3
    26.8. 05:44 | Nová verze

    Byla vydána nová verze 9.16 z Debianu vycházející linuxové distribuce DietPi pro (nejenom) jednodeskové počítače. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    Pro otevření více webových stránek ve webovém prohlížečí používám
     (78%)
     (9%)
     (3%)
     (4%)
     (5%)
     (1%)
    Celkem 101 hlasů
     Komentářů: 9, poslední dnes 11:53
    Rozcestník

    vim a matlab

    14.5.2006 22:48 | Přečteno: 1670× | takruzne | poslední úprava: 16.6.2006 17:27

    keywords vim matlab script m-file

    Nevím, jak jsou na tom verze matlabu nyní, ale tento skript edit.m nahrazuje matlabí edit. Používal jsem jej pro gnome-terminal, ale pak jsem přešel na aterm. Proto je kód pro gnome-terminál ponechán zakomentovaný. Překvapil mne kamarád, že jej používá a bez problémů. Psal jsem to před 2 lety kvůli diplomce, protože jsem prostě na vim zvyklý.

    Logika argumentů je divoká, ale nějak mě to zatím nezradilo.

    Skript je k použítí v xkách. Matlab je dobré spouštet v terminálu jako matlab -nosplash -nojvm -nodesktop

    Soubor nakopírujte do ~/matlab. Použijte help edit
    function [C, A ] = vim( varargin ) 
    
    %           EDIT  
    %           EDIT arg1 arg2 
    %           EDIT ./arg1 ./arg2
    %           EDIT /.../arg1 /.../arg2 
    % [C, A ] = EDIT
    % [C, A ] = EDIT( 'arg1', 'arg2', ... )
    % [C, A ] = EDIT( '-c \"<editor command>\"', 'arg1', 'arg2' )  
    %
    % EDIT overrides a default matlab script EDIT.m.
    % EDIT opens the file in a text editor.  
    %
    % By default, The EDIT editor is used. The user may 
    % specify a different editor by modifying the shell command 
    % in the M-file.
    %
    % EDIT X Y Z ... will atempt to open all specified files in an
    % editor. Each argument is directly passed into an editor argument.
    % Instead of the first file you can use the editor (EDIT) command 
    % as well. But this command has to be the first argument 
    % in the string. 
    %         
    % EDIT '-c \"w\"' FILE1.M FILE2.M 
    %  
    % passes the command "save FILE1.M" to EDIT. Be aware of placing
    % a gap between both the editor command and the file name.  
    %
    %
    % EDIT, by itself, opens up a new editor window.
    %
    %
    % EDIT returns two strings:
    %  	C is the command passed into the terminal input.
    % 	A is the command passed into the editor input. 
    %Copyleft 2004 elviin
    
    
    if ~iscellstr( varargin )
       error( 'The input must be a string.' );
       return;
    end
    
    
    
    cellFileArg = '#'; %Use this character instead of a white space. 
    		   %There are problems with leading and trailing spaces. 
                       
                       %Because in gnome-terminal is needed full file-path.
                       %Say vim to open it. (I don't know why it doesn't work.)
    %gnome-terminal
    %vimOpenFile = '-c#\"e#';
    %aterm
    vimOpenFile = '-c#"e#';
    
    	          %Set the proper directory for edited file.		
    curDir = strcat( pwd, '/' ); 
    
    %gnome-terminal	          %Set the proper directory for editor;		
    %changeDirOptionTail = strcat( curDir, '\"' );
    %aterm
    changeDirOptionTail = strcat( curDir, '"' );
    
    %for gnome-terminal
    %changeDirOption = strcat( '#-c#\"cd#', changeDirOptionTail );
    
    %for aterm
    changeDirOption = strcat( '#-c#"cd#', changeDirOptionTail );
    
    		  %Fill the buffer with arguments.
    for i = 1:nargin
      cVarargin = char( varargin(i) );
      switch cVarargin(1)
        case {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9'}
          Err = sprintf('Remove heading ''%s'' from the name.', cVarargin(1));, ...
          disp(Err)
          return
        case '-', ...
          cellFileArg = strcat( cellFileArg, cVarargin );, ...
          cellFileArg = strcat( cellFileArg, '#' );
        case {'~', '/', '.', '\'}, ...
          if length(cVarargin) < 2
            disp('File name is too short.')
            return
          end
          nameLength = length( cVarargin );
          if strfind( cVarargin( nameLength-1: nameLength ), '.m' )
            cVarargin = strcat( vimOpenFile, cVarargin );
            %for gnome-terminal
            %cVarargin = strcat( cVarargin, '\"' ); %terminate the command
            %for aterm
            cVarargin = strcat( cVarargin, '"' ); %terminate the command
            cellFileArg = strcat( cellFileArg, cVarargin );, ...
            cellFileArg = strcat( cellFileArg, '#' );
          else
            cVarargin = strcat( cVarargin, '.m' );, ...
            cVarargin = strcat( vimOpenFile, cVarargin );, ...
            %for gnome-terminal
            %cVarargin = strcat( cVarargin, '\"'); %terminate the command
            %for aterm
            cVarargin = strcat( cVarargin, '"'); %terminate the command
            cellFileArg = strcat( cellFileArg, cVarargin );, ...
            cellFileArg = strcat( cellFileArg, '#' );
          end
        otherwise     %No exact file name is specified. 
                      %Try to select a file:
          parPath = which( cVarargin ); 
          if ( strcmp( parPath, '' ) )
            nameLength = length(cVarargin);
                      %If the file name is long enough...
            if ( nameLength > 1 )
                      %If .m extension is missing...
              if ( strfind( cVarargin( nameLength-1: nameLength ), '.m' ) )
                cVarargin  = strcat( curDir, cVarargin );
                cellFileArg = strcat( cellFileArg, cVarargin );
                cellFileArg = strcat( cellFileArg, '#' );       
              else  
                cVarargin = strcat( cVarargin, '.m' );
                cVarargin  = strcat( curDir, cVarargin );
                cellFileArg = strcat( cellFileArg, cVarargin );
                cellFileArg = strcat( cellFileArg, '#' );       
              end
            else      %Edit the file in spite of too short name.
              cVarargin = strcat( cVarargin, '.m' );
              cVarargin  = strcat( curDir, cVarargin );
              cellFileArg = strcat( cellFileArg, cVarargin );
              cellFileArg = strcat( cellFileArg, '#' );
              Err = sprintf('File name ''%s''is possibly too short to specify m-file.', cVarargin);, ...
              disp(Err);
            end
          else        %We have found a path to reach the file.
            cellFileArg  = strcat( cellFileArg, parPath );
            cellFileArg = strcat( cellFileArg, '#' );
          end
      end
    end;
    
    
    		  %Convert values of the type cell to the string.  
    cFileArg = char( cellFileArg );
    		  
    		  %Include arguments in to the shell command.
    		  %You can edit both the name of a file manager and an editor. 
    		  %Change editting directory:	
    cFileArg = strcat( changeDirOption, cFileArg );
                      %--zoom arg is useless in Gnome 
    commandGnomeTerminal = strcat( 'gnome-terminal --window-with-profile=matlab --zoom=1.333333333 --geometry=80x25  --command "vim' , cFileArg );
    
    commandATerm = strcat( 'aterm -T Matlab -e vim', cFileArg );
    command = commandATerm; %commandGnomeTerminal
    % command = strcat( command, '"' ); %commandGnomeTerminal terminator
    		  
    
                      %The way how to disable gtk warning messages:
                      %** (gnome-terminal:2240): WARNING **: [Invalid UTF-8]
                      %in case your default xwindow manager is not Gnome.
    execommand = strcat( command, '#');
    execommand = strcat( execommand, '>#/dev/null#2>&1#&');
    execommand = strcat( 'nohup#', execommand );
    
    		  %Replace the character '#' with ' ' and execute the command.
    execommand = strrep( execommand, '#', ' ' );
    
    
                      %Execute the command attached to vim editor: 
    unix( execommand );
    
    
    
    nout = max(nargout,1)-1;
                      %Disable  output messages (0).
                      %List the enabled ones (1, 2). 
    switch nout
    	case 2,
    		C = execommand;,
    		A = strrep( cFileArg, '#', ' ' );
    	case 1,
    		C = execommand;
    		A = strrep( cFileArg, '#', ' ' );
    	case 0,   %(*) explicit obstruction from stdout
    			
    	otherwise
    		disp('To many output arguments.')	
    end;
    	
    
    
    
    
           

    Hodnocení: 100 %

            špatnédobré        

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.