Svobodný operační systém ReactOS (Wikipedie), jehož cílem je kompletní binární kompatibilita s aplikacemi a ovladači pro Windows, slaví 30. narozeniny.
Společnost Raspberry Pi má nově v nabídce flash disky Raspberry Pi Flash Drive: 128 GB za 30 dolarů a 256 GB za 55 dolarů.
Technologie Skip pro multiplatformní mobilní vývoj, která umožňuje vývojářům vytvářet iOS a Android aplikace z jediné Swift a SwiftUI kódové základny, se s vydáním verze 1.7 stala open source.
Na GitHubu byl zveřejněn algoritmus "Pro vás" sociální sítě 𝕏.
Byla vydána nová major verze 34.0.0 webového prohlížeče Pale Moon (Wikipedie) vycházejícího z Firefoxu. Přehled novinek v poznámkách k vydání.
Win8DE je desktopové prostředí pro Wayland, inspirované nechvalně proslulým uživatelským rozhraním Metro z Windows 8. Nabízí dlaždicové rozhraní s velkými tlačítky a jednoduchou navigací, optimalizované pro dotyková zařízení. Cílem projektu je přetvořit design operačního systému Windows 8 do funkčního a minimalistického rozhraní vhodného pro každodenní použití na Linuxu.
Laboratoře CZ.NIC vydaly Datovku 4.28.0 a Mobilní Datovku 2.6.0. Hlavní novinkou je ukládání rozpracovaných datových zpráv do konceptů. Datovka je svobodné multiplatformní aplikace pro přístup k datovým schránkám a k trvalému uchovávání datových zpráv v lokální databázi.
Unix Pipe Game je vzdělávací karetní hra zaměřená na děti a rodiče, která děti učí používat unixové příkazy prostřednictvím interaktivních úkolů. Klíčovým prvkem hry je využití symbolu | pro pipeline neboli 'rouru', který umožňuje propojit výstupy a vstupy jednotlivých unixových příkazů, v tomto případě vytištěných na kartičkách. Předpokládá se, že rodič má alespoň nějaké povědomí o unixových příkazech a jejich provazování pomocí |.
… více »PCIem je linuxový framework, který vytváří virtuální zařízení PCIe pomocí technik, které umožňují hostitelskému operačnímu systému rozpoznat tyto syntetické 'neexistující' karty jako fyzické zařízení přítomné na sběrnici. Framework PCIem je primárně zamýšlen jako pomůcka pro vývoj a testování ovladačů bez nutnosti použít skutečný hardware. Dle tvrzení projektu si fungování PCIem můžeme představit jako MITM (Man-in-the-Middle), který se nachází mezi ovladači a kernelem.
Byla nalezena vážná bezpečnostní chyba v telnetd z balíčku GNU InetUtils. Týká se verzí GNU InetUtils od 1.9.3 z 12. května 2015 až po aktuální 2.7 z 14. prosince 2025. Útočník může obejít autentizaci a získat root přístup, jelikož telnetd nekontroluje předaný obsah proměnné prostředí USER a pokud obsahuje "-f root"…
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
~/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;
Tiskni
Sdílej: