I am using the solution from How can I write line numbers inside boxed code. Its code with slightly changes:
\begin{filecontents*}{\jobname.sol}
function hello_world(uint a, uint b, uint c, uint d, uint e, uint f) public returns bool {
uint256 amount = 100
return amount * 100
return true;
}
\end{filecontents*}
\documentclass[10pt,journal,compsoc]{IEEEtran}
\usepackage[english]{babel}
\usepackage{pgfplots}
\usepackage{booktabs}
\usepackage{listings}
\usepackage[many]{tcolorbox}
\tcbuselibrary{listings}
\ifCLASSOPTIONcompsoc
\usepackage[nocompress]{cite}
\else
\usepackage{cite}
\fi
\pgfplotsset{compat=1.18}
\hyphenation{op-tical net-works semi-conduc-tor}
\newtcbinputlisting{\inputlisting}[2][]{%
listing file={#2},
top=0pt,
left=16pt,
bottom=0pt,
right=8pt,
colback=verylightgray,
colframe=black,
listing only,
breakable,
sharp corners,
boxrule=0.2pt,
listing options={#1},
}
\lstdefinelanguage{Solidity}{
keywords=[1]{% generic keywords including crypto operations
anonymous, assembly, assert, balance, break, call, callcode, case,
catch, class, constant, continue, constructor, contract, debugger,
default, delegatecall, delete, do, else, emit, event, experimental,
export, external, false, finally, for, function, gas, if, implements,
import, in, indexed, instanceof, interface, internal, is, length,
library, log0, log1, log2, log3, log4, memory, modifier, new, payable,
pragma, private, protected, public, pure, push, require, return,
returns, revert, selfdestruct, send, solidity, storage, struct,
suicide, super, switch, then, this, throw, transfer, true, try,
typeof, using, value, view, while, with, addmod, ecrecover, keccak256,
mulmod, ripemd160, sha256, sha3
},
keywordstyle=[1]\color{blue}\bfseries,
keywords=[2]{% types; money and time units
address, bool, byte, bytes, bytes1, bytes2, bytes3, bytes4, bytes5,
bytes6, bytes7, bytes8, bytes9, bytes10, bytes11, bytes12, bytes13,
bytes14, bytes15, bytes16, bytes17, bytes18, bytes19, bytes20, bytes21,
bytes22, bytes23, bytes24, bytes25, bytes26, bytes27, bytes28, bytes29,
bytes30, bytes31, bytes32, enum, int, int8, int16, int24, int32, int40,
int48, int56, int64, int72, int80, int88, int96, int104, int112, int120,
int128, int136, int144, int152, int160, int168, int176, int184, int192,
int200, int208, int216, int224, int232, int240, int248, int256, mapping,
string, uint, uint8, uint16, uint24, uint32, uint40, uint48, uint56,
uint64, uint72, uint80, uint88, uint96, uint104, uint112, uint120,
uint128, uint136, uint144, uint152, uint160, uint168, uint176, uint184,
uint192, uint200, uint208, uint216, uint224, uint232, uint240, uint248,
uint256, var, void, ether, finney, szabo, wei, days, hours, minutes,
seconds, weeks, years},
keywordstyle=[2]\color{teal}\bfseries,
keywords=[3]{% environment variables
block, blockhash, coinbase, difficulty, gaslimit, number, timestamp,
msg, data, gas, sender, sig, value, now, tx, gasprice, origin
},
keywordstyle=[3]\color{violet}\bfseries,
identifierstyle=\color{black},
sensitive=false,
comment=[l]{//},
morecomment=[s]{/}{/},
commentstyle=\color{gray}\ttfamily,
stringstyle=\color{red}\ttfamily,
morestring=[b]',
morestring=[b]"
}
\lstset{
language=Solidity,
extendedchars=true,
basicstyle=\footnotesize\ttfamily,
showstringspaces=false,
showspaces=false,
numbers=none,
numberstyle=\footnotesize,
numbersep=9pt,
tabsize=1,
breaklines=true,
showtabs=false,
captionpos=b
}
\begin{document}
\section{Introduction}
\inputlisting{\jobname.sol}
\end{document}
Seems like broken lines have four spaces.
Is it possible to have the linebreak tab size as two space? Please note that I have changed tabsize=1 to smaller values but it did not have any effect.
As an example, see where there are two spaces before uint d and bool {:
function hello_world(uint a, uint b, uint c,
uint d, uint e, uint f) public returns bool {
uint256 amount = 100
return amount * 100
return true;
}
Related:


[language=Solidity]to appyly language colors right? – alper Jun 22 '22 at 09:521.2emto2.4emright? – alper Jun 22 '22 at 10:041.2emsince the question asks for two-space indent. – Zxcvasdf Jul 04 '22 at 04:041.2emto a larger value like1.5emor more but it did not helped to increase the width per line like I wantd,on the first line since there is more space at the end of the first line – alper Jul 04 '22 at 08:15